爬虫概述
- 网络爬虫:网页蜘蛛,网络机器人,模拟客户端发生网络请求,接受响应。一种按照一定的规则,自动的抓取互联网上信息的程序
- 只要浏览器能做的事情,理论上爬虫都能做。(前端基础+后台基础)
爬虫步骤
- 构造url列表
- 遍历url列表,发送请求,获取响应
- 保存数据
使用requests模块(urllib2,urllib3,)
- 下载requests模块
pip install requests - 请求方法
①get方法
url=''
headers={'':''}
response=requests.get(url=url,headers=headers)
②post方法4
response = requests.post(url=url, data=data, headers=headers)
ret=json.loads(response.text)#将json对象转化成为python的字典
在通过python的基础知识,从字典中取出想要的值
③request方法
url=''
headers={'':''}
response=requests.request(method='get/post',url=url,headers=headers)
- content与text方法
response对象具有的固有方法,用于读取内容
①response.content:当读取文本数据的时候,可以通过response.text获取
response.content.decode('utf-8'): 指定response接收到的二进制文件的解码方式
②response.text:当读取图片,音频,视频的时候 ,可以通过response.content获取
response.encoding = 'utf-8':指定编码方式 - get()和request()请求方式的params参数
用于存放参数
params={
键:值,
键:值,
键:值,
键:值,
键:值
}
requests.get (url=url,params=params,headers=headers)
参数也可以直接放在url里面
url = 'https://www.baidu.com/s?wd=???????????????????????????&rsv_spt=1&rsv_iqid=0xfcb9be4b007635f2&issp=1&f=3&rsv_bp=1&rsv_idx=2&ie=utf-8&rqlang=cn&tn=02003390_2_hao_pg&rsv_enter=1&rsv_dl=ts_0&oq=%25E7%2599%25BE%25E5%25BA%25A6&rsv_t=c3ceM%2FvmWDTBddfy08U%2B4fWHk902mnEnzuC2kJdG%2BQA8ANLC2RAdehn6YPZMkqoVWqewcHDX2A8&inputT=3557&rsv_pq=8002aaae005d1909&rsv_sug3=33&rsv_sug1=16&rsv_sug7=101&rsv_sug2=1&prefixsug=%25E9%25BD%2590%25E9%25B2%2581&rsp=0&rsv_sug4=3557&rsv_sug=1'