python爬虫(简易网页采集器)

爬虫基本流程:
1、指定URL
2、基于requests模块发起请求
3、获取响应对象中的数据值
4、持久化存储

关于爬虫的君子协议:robots.txt 在网站名后加/robots.txt查看可以爬取的信息
如淘宝网站:
python爬虫(简易网页采集器)_第1张图片
User-Agent(请求载体的身份标识)
打开浏览器,按F12出现抓包工具
如图:
python爬虫(简易网页采集器)_第2张图片
可以使用此User-Agent,图示为使用QQ浏览器的身份标识
(其中XHR中有Ajax请求)
最终结果:
python爬虫(简易网页采集器)_第3张图片
python爬虫(简易网页采集器)_第4张图片
具体代码如下:

import requests
#UA检测:门户网站的服务器会检测对应请求的载体身份标识,如果检测到的载体身份标识是某一款浏览器,
#说明该请求是一个正常的请求,但是,如果请求到的载体身份标识不是某一款浏览器,
#则表示该请求不是一个正常请求(爬虫),则服务器就很有可能拒绝该次请求
#UA:User-Agent(请求载体得身份标识)
#UA伪装:让爬虫对应的请求的载体身份标识伪装成一款浏览器
#UA伪装 将对应的User-Agent封装到一个字典中
headers={
   'User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.25 Safari/537.36 Core/1.70.3741.400 QQBrowser/10.5.3863.400'

}
#step1 指定URL
url = 'https://www.sogou.com/web?'#这个问号保留也可不保留也可
#处理url携带的参数(封装到字典中)
kw = input("entry a word:")
param={
    'query':kw
}
#step2 基于requests模块发起请求
#对指定的的url发起的请求对应的url是携带参数的,并且请求过程中处理了参数
response = requests.get(url=url,params=param,headers=headers)
#step3 获取响应对象的数据值
Page_txt = response.text
#step4 持久化存储
fileName = kw+'.html'
with open(fileName,'w',encoding='utf-8')as fp:
    fp.write(Page_txt)
print(fileName,"保存成功!")





你可能感兴趣的:(python)