python爬虫伪装浏览器发送获取不到信息,反而去掉伪装就获取到了?

class PaChong(object): def __init__(self): self.tiebaName = "python" self.page = 1 self.end = 3 self.url = "https://tieba.baidu.com/f?" self.header = { "User-Agent":"Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36" } self.fileName = 1 #构造初始url def tiebaUrl(self): for i in range(self.page,self.end+1): pn = (i-1)*50 wo = {'pn':pn,'kw':self.tiebaName} word = urllib.parse.urlencode(wo) myurl = self.url+word #print(myurl) self.biaoTi(myurl) #根据url爬取每个标题链接 def biaoTi(self,url): req = request.Request(url,headers=self.header) data = request.urlopen(req).read() #print(data.decode()) html = etree.HTML(data) #print(html.text) data1 = html.xpath('//div[@class="threadlist_lz clearfix"]/div/a/@href') #print(data1) #用for循环构造每个链接 for x in data1: myurl1 = "https://tieba.baidu.com"+x #print(myurl1) self.lianJie(myurl1)

不要使用self.header,可以输出一下self.header看看是否在调用正确,望采纳
温馨提示:内容为网友见解,仅供参考
第1个回答  2020-04-25
python爬虫伪装浏览器发送获取不到信息,反而去掉伪装就获取到了

python爬虫爬取不出信息
1.对方有反爬程序 几乎所网站为了防止一些恶意抓取,会设置反爬程序,你会发现明明很多数据显示在浏览器上,但是却抓取不出来。2.伪装方式没有绕过目标网站反爬 网站都有反爬虫机制,防止爬取数据,爬虫想要爬取数据,就需要隐藏自身的身份,伪装成用户的身份进行访问,如果没有伪装好,被检测到爬虫,也...

python爬虫伪装浏览器出现问题求助
首先我是这样做的:import urllib.requesturl = "http:\/\/www.oschina.net\/"data = urllib.request.urlopen(url).read()print(data)结果发现不行,OSC加了保护,不止是OSC,CSDN等等很多网站都这样,这就必须要伪装浏览器正常访问了,类似蜘蛛爬虫一样,那么只有给代码加上一个Header,再试试读取HTML...

关于爬虫中的headers问题(破解版)
首先,查看浏览器的headers信息。打开浏览器,按F12键打开开发者调试工具,选择"网络",找到目标页面,查看request headers和response headers部分。这将揭示服务器需要的必要信息。其中,user-agent和host是常用的关键参数。user-agent标识请求者的浏览器类型,爬虫需要伪装成浏览器以避免被识别。获取user-agent...

python 爬虫为什么我更换不同的请求头(User-Agent) 就找不到我想要的...
python爬虫爬取网站内容时,如果什么也没带,即不带报头headers,往往会被网站管理维护人员认定为机器爬虫。因为,此时python默认的user-agent如Python-urllib\/2.1一样。因此,网站管理人员会根据请求的user-agent判定你是不是机器爬虫。所以,此时往往就需要伪装user-agent,模拟成真实的浏览器去取出内容。

毕业生必看Python爬虫上手技巧
行垃圾回收后cookie也将丢失, 所有过程都不需要单独去操作 手动添加cookie: 4、伪装成浏览器 某些网站反感爬虫的到访,于是对爬虫一律拒绝请求。所以用 urllib 2直接访问网站经常会出现HTTP Error 403: Forbidden的情况。 对有些header要特别留意, Server端会针对这些header 做检查: 1.User-Agent有些Server或Proxy会...

python 爬虫,爬不到数据
那数据是动态的,是通过js动态添加上去的,所以获取不到。不仅是通过js动态添加的。而且从服务器获取的数据是加密过的,然后再解密,最后张渲染到页面上。

爬虫技术是做什么的
爬虫技术,本质上是一种自动化程序,专门用来从互联网上抓取并存储数据。它的核心原理是模仿浏览器发送网络请求,获取服务器响应,然后按照规则筛选和提取信息。以下是爬虫技术的主要步骤:首先,发送网络请求。Python库如urllib和requests简化了这一过程,通过它们可以发送各种形式的请求,获取网页源代码。其次...

Python 爬虫(一):Header 的设置
requests库中的get和post方法默认的User-Agent标识了请求来源,这可能会暴露为Python爬虫,从而触发网站的反爬策略。因此,我们需要自定义headers,尤其是User-Agent,使其看起来像是浏览器请求。例如,通过访问httpbin.org\/headers,我们可以观察到浏览器的典型headers结构。在requests.get()函数中,可以添加...

爬虫技术的原理是什么?
1、获取网页 获取网页可以简单理解为向网页的服务器发送网络请求,然后服务器返回给我们网页的源代码,其中通信的底层原理较为复杂,而Python给我们封装好了urllib库和requests库等,这些库可以让我们非常简单的发送各种形式的请求。2、提取信息 获取到的网页源码内包含了很多信息,想要进提取到我们需要的信息...

python爬虫一次可爬多少?
在使用python爬虫爬取数据的时候,经常会遇到一些网站的反爬虫措施,一般就是针对于headers中的User-Agent,如果没有对headers进行设置,User-Agent会声明自己是python脚本,而如果网站有反爬虫的想法的话,必然会拒绝这样的连接。而修改headers可以将自己的爬虫脚本伪装成浏览器的正常访问,来避免这一问题。点击这里了解详情 关...

相似回答
大家正在搜