首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >python网络爬虫(1)静态网页抓取

python网络爬虫(1)静态网页抓取

作者头像
嘘、小点声
发布2019-07-31 17:23:30
8290
发布2019-07-31 17:23:30
举报

获取响应内容:

import requests
r=requests.get('http://www.santostang.com/')
print(r.encoding)
print(r.status_code)
print(r.text)

获取编码,状态(200成功,4xx客户端错误,5xx服务器相应错误),文本,等。

定制Request请求

传递URL参数

key_dict = {'key1':'value1','key2':'value2'}
r=requests.get('http://httpbin.org/get',params=key_dict)
print(r.url)
print(r.text)

定制请求头

headers={'user-agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36 SE 2.X MetaSr 1.0','Host':'www.santostang.com'}
r=requests.get('http://www.santostang.com',headers=headers)
print(r.status_code)

发送POST请求

POST请求发送表单信息,密码不显示在URL中,数据字典发送时自动编码为表单形式。

key_dict = {'key1':'value1','key2':'value2'}
r=requests.post('http://httpbin.org/post',data=key_dict)
print(r.url)
print(r.text)

超时并抛出异常

r=requests.get('http://www.santostang.com/',timeout=0.11)

获取top250电影数据

import requests
import myToolFunction
from bs4 import BeautifulSoup

def get_movies():
    headers={'user-agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36 SE 2.X MetaSr 1.0','Host':'movie.douban.com'}
    movie_list=[]
    for i in range(10):
        link='https://movie.douban.com/top250'
        key_dict = {'start':i*25,'filter':''}
        r=requests.get(link,params=key_dict)
        #print(r.text)
        print(r.status_code)
        print(r.url)
        
        soup=BeautifulSoup(r.text,'lxml')
        div_list=soup.find_all('div', class_='hd')
        for each in div_list:
            movie=each.a.span.text.strip()+'\n'
            movie_list.append(movie)
        pass
    return movie_list

def storFile(data,fileName,method='a'):
    with open(fileName,method,newline ='') as f:
        f.write(data)
        pass
    pass

movie_list=get_movies()
for str in movie_list:
    myToolFunction.storFile(str, 'movie top250.txt','a')
    pass
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-05-31 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 获取响应内容:
  • 定制Request请求
    • 传递URL参数
      • 定制请求头
        • 发送POST请求
          • 超时并抛出异常
          • 获取top250电影数据
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档