首頁  >  問答  >  主體

PC端存取卻變成行動位址問題#python#scrapy

用scrapy 爬取喜馬拉雅,爬取PC端位址,入口連結的response沒問題,但後面response看到的是行動位址。 。 。 。

spider 程式碼如下:

class SpxmlySpider(scrapy.Spider):
    name = 'ximalaya'
    allowed_domains = ["ximalaya.com"]
    # 保存每页链接
    start_urls = ['http://www.ximalaya.com/dq/all/{}'.format(num) for num in range(2, 3)]  #先改为第二页试试

    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端访问会变成移动地址问题!!!!!!!!!!!!!!!!!
    def parse_details(self, response):
        item = XimalayaItem()
        print(response)
        ......以下省略

控制台輸出:

#已經寫了一個 middlewares.RotateUserAgentMiddleware,是生效的,輸出內容也可以看出來。

是不是觸發什麼反爬機制?

淡淡烟草味淡淡烟草味2667 天前1029

全部回覆(2)我來回復

  • 高洛峰

    高洛峰2017-06-30 09:57:13

    應該是你的headers沒有設定user-agent的原因

    回覆
    0
  • 欧阳克

    欧阳克2017-06-30 09:57:13

    request headers 好好配置一下, 判斷是不是移動端一般是靠user-agent
    啥都沒有也能訪問到數據,也說明目標網站沒怎麼在意防盜鏈

    回覆
    0
  • 取消回覆