首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
V2EX  ›  问与答

爬虫遇到一个问题, 请教各位

  •  
  •   viiii · 47 天前 · 444 次点击
    这是一个创建于 47 天前的主题,其中的信息可能已经有所发展或是发生改变。

    做爬虫练手,爬取搜房网的二手房信息

    北京二手房 url 是: https://esf.fang.com/,但是爬虫发送请求时,会自动重定向到我所在城市的二手房页面(例如上海)

    尝试在 request 里面添加 dont_filter 或者 settings 里面添加 REDIRECT_ENABLED = False 好像都不能解决问题

    尝试在处理响应时判断是否被重定向,如果发现被重定向就重新请求目标 url 但结果是陷入死循环,新的请求还是继续被重定向

    请教下各位,这种情况该如何解决? (暂时排除使用北京 IP 地址提交请求这个方案)

    爬虫 log 如下:

    2019-06-26 15:29:04 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://www.fang.com/SoufunFamily.htm> (referer: None) 2019-06-26 15:29:05 [scrapy.downloadermiddlewares.redirect] DEBUG: Redirecting (302) to <GET http://esf.sh.fang.com> from <GET https://esf.fang.com/> 2019-06-26 15:29:12 [scrapy.downloadermiddlewares.redirect] DEBUG: Redirecting (301) to <GET http://sh.esf.fang.com/> from <GET http://esf.sh.fang.com> 2019-06-26 15:29:17 [scrapy.downloadermiddlewares.redirect] DEBUG: Redirecting (302) to <GET https://sh.esf.fang.com/> from <GET http://sh.esf.fang.com/> 2019-06-26 15:29:24 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://sh.esf.fang.com/> (referer: None)

    4 回复  |  直到 2019-07-01 18:16:03 +08:00
        1
    boom7   47 天前
    你应该做的分析流程:
    1.进入北京房天下,发现跳转到了[比如]上海
    2.发现左上角可以选择地区
    3.选择北京,跳转成功
    4.打开控制台,清除所有 cookie 和缓存,重复刚才的流程
    5.发现有一条对 DefaultEsf1.aspx 的请求,它设置了 city=www 的 cookie, 并重定向到了北京房天下
    6.尝试在代码里带上 city=www 的 cookie 直接请求北京房天下
        2
    towser   47 天前
    爬七层协议开个 Fiddler,照着抓包信息还原就行了
        3
    viiii   47 天前
    @towser Fiddler 目前还不会用,打算后面学一下
        4
    viiii   47 天前
    @boom7 多谢指点,等下班回去试试
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   1101 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 21ms · UTC 18:05 · PVG 02:05 · LAX 11:05 · JFK 14:05
    ♥ Do have faith in what you're doing.