爬虫-->请求网站并提取数据的自动化程序
1、发送http请求requests(headers)
2、获取响应respones
3、解析内容
4、保存数据
***检查网页源代码
request
请求方式
get post(请求参数不包含在url内,需要构造相关表单)
请求URL
URL:统一资源定位符
Request URL: http://www.365cmd.com/template/dean_cul_160605/deancss/search1.png
Request Method: GET
Status Code: 200 OK (from memory cache)
Remote Address: 47.91.239.229:80
Referrer Policy: no-referrer-when-downgrade
请求头 request headers
Accept: image/webp,image/apng,image/*,*/*;q=0.8
Accept-Encoding: gzip, deflate, br
Accept-Language: zh-CN,zh;q=0.9
Connection: keep-alive
Cookie: BAIDUID=BD8260D3EA0BAF05129C0504AE42B471:FG=1; BIDUPSID=BD8260D3EA0BAF05129C0504AE42B471; PSTM=1526209493; BDORZ=B490B5EBF6F3CD402E515D22BCDA1598; BDRCVFR[mkUqnUt8juD]=mk3SLVN4HKm; H_PS_PSSID=1427_21079_22074
Host: sp1.baidu.com
Referer: https://www.baidu.com/?tn=98012088_5_dg&ch=12
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3423.2 Safari/537.36
请求体-->网页源代码
response
响应状态码
响应头 response headers
Accept-Ranges: bytes
Cache-Control: max-age=0
Content-Length: 0
Content-Type: image/gif
Date: Fri, 06 Jul 2018 16:51:39 GMT
Etag: "4280832337"
Expires: Fri, 06 Jul 2018 16:51:39 GMT
Last-Modified: Fri, 23 Oct 2009 08:06:04 GMT
Pragma: no-cache
Server: BWS/1.0
响应体-->网页源代码
1 # @Time : 2018/7/6 13:55
2 # @Author : chenxiaowei
3 # @Email : [email protected]
4 # @File : 安装库.py
5 import requests
6 re=requests.get('http://www.baidu.com')
7 print(re,re.cookies)
8 print(re.text)
2、抓取数据类型
网页文本
图片、视频(二进制形式)
3、解析方式
直接解析
json解析
正则表达式
解析库(PyQuery、Beautiful、XPath)
4、js渲染请求
分析Ajax请求
seleium/webdriver
splash
pyv8\ghost.py
5、保存数据
纯文本
关系型数据库 orcale Mysql
非关系型数据库 mongoDB redis
二进制格式