PC端訪問(wèn)卻變成移動(dòng)端地址問(wèn)題#python#scrapy
問(wèn)題描述
用scrapy 爬取喜馬拉雅,爬取PC端地址,入口鏈接的response沒(méi)問(wèn)題,但后面response看到的是移動(dòng)端地址。。。。
spider 代碼如下:
class SpxmlySpider(scrapy.Spider): name = ’ximalaya’ allowed_domains = ['ximalaya.com'] # 保存每頁(yè)鏈接 start_urls = [’http://www.ximalaya.com/dq/all/{}’.format(num) for num in range(2, 3)] #先改為第二頁(yè)試試 def parse(self, response):# 取出專輯鏈接print(response)mainurls = response.xpath(’//p[@class='albumfaceOutter']/a/@href’).extract()# for url in mainurls:# yield Request(url = url, callback=self.parse_details)print(mainurls[0])yield Request(url = mainurls[0], dont_filter=True, callback = self.parse_details)# TODO 為什么PC端訪問(wèn)會(huì)變成移動(dòng)地址問(wèn)題!!!!!!!!!!!!!!!!! def parse_details(self, response):item = XimalayaItem()print(response)......以下省略
控制臺(tái)輸出:
已經(jīng)寫(xiě)了一個(gè) middlewares.RotateUserAgentMiddleware,是生效的,輸出內(nèi)容也可以看出來(lái)。
是不是觸發(fā)什么反爬機(jī)制?
問(wèn)題解答
回答1:應(yīng)該是你的headers沒(méi)有設(shè)置user-agent的原因
回答2:request headers 好好配置一下, 判斷是不是移動(dòng)端一般是靠user-agent啥都沒(méi)有也能訪問(wèn)到數(shù)據(jù),也說(shuō)明目標(biāo)網(wǎng)站沒(méi)怎么在意防盜鏈
相關(guān)文章:
1. 如何解決docker宿主機(jī)無(wú)法訪問(wèn)容器中的服務(wù)?2. docker 下面創(chuàng)建的IMAGE 他們的 ID 一樣?這個(gè)是怎么回事????3. require后不用使用echo返回到微信服務(wù)器 嗎4. nginx - 如何將wordpress系統(tǒng)放在二級(jí)域名下5. javascript - 請(qǐng)問(wèn)要如何修改 Node 的透明度嗎?6. javascript - 求助,nodeJS和koa2文檔對(duì)新手小白太不友好,一臉懵逼。。。7. css3 background顯示圖片的一部分8. vim中編輯HTML文件時(shí)換行不能縮進(jìn)9. 在應(yīng)用配置文件 app.php 中找不到’route_check_cache’配置項(xiàng)10. html按鍵開(kāi)關(guān)如何提交我想需要的值到數(shù)據(jù)庫(kù)
