UA,cookie,handler都用了,还是不行,该怎么办呢?
笔趣阁。
能让我看看你完整的请求头吗?
由于浏览器可以正常打开你的网站,所以你必须尽可能模仿浏览器的行为,如果你的请求头只写UA,Cookie,handler,怕网站不会给你通过。
firefox对于你的目标网站请求头长这样:
GET /16750/223331.html HTTP/3
Host: www.beqege.cc
User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:109.0) Gecko/20100101 Firefox/115.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate, br
Alt-Used: www.beqege.cc
Connection: keep-alive
Cookie: cf_clearance=hFt3tqQzwm_H4dmwHWyApDPxjvILnwhVLdhz.c6gIWY-1691912651-0-1-4baf00ee.5cf7af74.20d4e7a3-0.2.1691912651; __gads=ID=7f4a8286638d52f5-220dc265d1e2002d:T=1691912651:RT=1691912651:S=ALNI_MaTdRHH9Um86XPcSv4cu95fLbR9lQ; __gpi=UID=00000c2c0157e013:T=1691912651:RT=1691912651:S=ALNI_MajKcWamQuejVOcBXC3ChKDZHww1A
Upgrade-Insecure-Requests: 1
Sec-Fetch-Dest: document
Sec-Fetch-Mode: navigate
Sec-Fetch-Site: none
Sec-Fetch-User: ?1
If-Modified-Since: Sun, 04 Dec 2022 12:29:52 GMT
TE: trailers
你可以删除没有用的部分,保留这些试试:
User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:109.0) Gecko/20100101 Firefox/115.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Alt-Used: www.beqege.cc
Connection: keep-alive
这个网返回的数据看着像是加密了的,上这个弄https://www.biqukan.cc/article/15/
【以下回答由 GPT 生成】
我可以给你一些关于如何解决Python反爬的一般指导方针。请注意,具体的解决方案可能因网站的反爬机制而异,因此无法提供确定的代码。你需要根据具体情况进行调整和实现。
有几种常见的反爬机制,你可以逐一尝试以下方法来解决问题:
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3'
}
response = requests.get(url, headers=headers)
url = 'http://example.com'
cookies = {
'sid': 'example_cookie_value'
}
response = requests.get(url, cookies=cookies)
session = requests.Session()
session.headers.update({'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3'})
response = session.get(url)
处理验证码:部分网站会使用验证码来防止机器人访问。你可以手动输入验证码,或者使用第三方库来自动解析验证码。
IP代理:使用IP代理来隐藏自己的真实IP地址,避免被封禁。可以使用第三方库来实现IP代理功能。
限制访问频率:有些网站会通过限制访问频率来防止爬虫。你可以在爬取时加入延时,避免过于频繁地请求网站。
分析反爬机制:有些网站使用了更复杂的反爬机制,比如动态生成JS代码、IP封禁或者其他自定义的策略。你可以使用开发者工具对网站进行分析,找出反爬机制所在,并编写相应的解决方案。
使用Selenium:针对一些比较复杂的反爬机制,可以考虑使用Selenium这样的工具模拟真实的浏览器行为,处理JavaScript渲染等问题。
以上是一些常见的解决方法,但这不是一个完整的列表。具体的解决方案可能因网站的具体反爬机制而异。同时,需要注意,尊重网站的爬取规则,并遵守法律法规。如果网站明确禁止爬取,你应该尊重其规定,避免侵权行为。
【相关推荐】