网页文章采集器( 【魔兽世界】UA伪装:让爬虫对应的请求载体身份标识 )

优采云 发布时间: 2022-01-24 00:16

  网页文章采集器(

【魔兽世界】UA伪装:让爬虫对应的请求载体身份标识

)

  import requests

response = requests.get('http://www.baidu.com')

print(response.status_code) # 打印状态码

print(response.url) # 打印请求url

print(response.headers) # 打印头信息

print(response.cookies) # 打印cookie信息

print(response.text) #以文本形式打印网页源码

print(response.content) #以字节流形式打印

  requests.get(网址,参数,标头)

  url:网址地址

  param:相关参数

  headers:头信息,例如请求载体的身份

  UA : user-Agent 请求载体的身份

  UA检测:门户网站的服务器会检测对应请求的运营商ID。如果检测到请求的运营商ID是某个浏览器,则说明该请求是正常请求。但是,如果检测到请求的载体标识不是基于某个浏览器的,则说明是异常请求(爬虫),服务器可能会拒绝该请求。

  UA伪装:让爬虫对应的请求载体身份伪装成浏览器

  代码示例:

  爬取百度页面

  # -*- coding:utf-8 -*-

import requests

if __name__ == '__main__':

# UA 伪装:将对应的User-Agent封装到字典中

headers = {

'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.190 Safari/537.36'

}

kw = input('input a word:')

url = 'https://www.baidu.com/s?'

param = {'wd': kw}

# 对指定的url发起的请求对应的url是携带参数的,并且请求过程中处理了参数

response = requests.get(url=url, params=param, headers=headers)

page_text = response.text

file_name = kw+'.html'

with open(file_name, 'w', encoding='utf-8') as fp:

fp.write(page_text)

print('保存成功')

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线