关于fake_useragent
import requests, osfrom lxml import etree
from fake_useragent import UserAgent
import time
url = "http://www.cbaigui.com/?paged=1"
ua = UserAgent(verify_ssl=False)
for i in range(1, 50):
headers = {
'User-Agent': ua.random,
'Host': 'www.cbaigui.com',
'Referer': 'http://www.cbaigui.com /?paged={}'
}
res = requests.get(url=url, headers=headers)
代码如上
问题0. ua = UserAgent(verify_ssl=False)是实例化一个UserAgent对象的意思吗,verify_ssl=False又是什么意思?
问题1. for i in range(1, 50) 是构造49个Refer的意思?这样就有49个请求头? 是实例化一个UserAgent对象的意思吗?
是的,你可以在你请求头那这样写:
headers = {
'User-Agent': UserAgent().chrome
}
这样就是随机 谷歌的 UA头 你也可以改成 ie或者 火狐的拼写
verify_ssl=False又是什么意思?
是否跳过证书验证,有些网站需要验证才能访问,但你跳过验证就可以正常访问
for i in range(1, 50) 是构造49个Refer的意思?这样就有49个请求头?
你代码可能 漏了个 i :
for i in range(1, 50):
headers = {
'User-Agent': ua.random,
'Host': 'www.cbaigui.com',
'Referer': f'http://www.cbaigui.com /?paged={i}'
}
没错 ,49 个请求头,Referer 是说明你从哪个网站跳转过来的,如果这样做出头,伪装人为更加真实,就是像人一页一页的翻一样 不缓存数据:
ua = UserAgent(cache=False)
忽略ssl验证:
ua = UserAgent(verify_ssl=False)
禁用服务器缓存:
ua = UserAgent(use_cache_server=False)
问题1. for i in range(1, 50) 是构造49个Refer的意思?这样就有49个请求头?
是的,不过你写的有问题,没有格式化到字符串里面去。可以使用fomart 或者 f"{i}" Stubborn 发表于 2020-6-10 17:09
不缓存数据:
ua = UserAgent(cache=False)
嗯,谢谢
页:
[1]