V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
wushuang
V2EX  ›  Python

tornado.httpclient.HTTPClient() 抓取 新浪微薄数据

  •  
  •   wushuang · 2014-05-16 22:05:15 +08:00 · 3877 次点击
    这是一个创建于 3644 天前的主题,其中的信息可能已经有所发展或是发生改变。
    用了网上的 python 非API方式 模拟登录新浪微薄 的代码,登录成功后抓取 微薄个人页面信息。
    登录代码: https://github.com/yoyzhou/weibo_login/blob/master/weibo_login.py

    同样的一个微薄页面,用urllib2的方式抓取一点问题都没,如果用tornado.httpclient.HTTPClient().fetch(url)的方式抓取就会跳转到注册界面,而且始终登录不成功,何解?

    注:
    如果是urllib2方式的话所有页面都能抓取成功;
    tornado httpclient的方式只是部分页面会跳转到注册地址,还是有些页面可以成功抓取的。
    6 条回复    2014-05-17 23:43:33 +08:00
    maga
        1
    maga  
       2014-05-17 00:27:58 +08:00
    为什么一定要用tornado.httpclient?
    binux
        2
    binux  
       2014-05-17 00:39:20 +08:00
    method, url, header(cookies), body
    四个都检查一遍

    分别用两种发一个请求到 http://httpbin.org/get
    对比请求有什么不同
    wushuang
        3
    wushuang  
    OP
       2014-05-17 11:16:42 +08:00
    @maga 因为我web框架就用的tornado,其他的懒得折腾了,哈哈,然后我看网上有Toro这个玩意儿,跟tonado配合好像还行,就试试看效果如何。
    maga
        4
    maga  
       2014-05-17 11:39:13 +08:00
    @wushuang 用urllib2就是一个库而已。话说request更好
    wushuang
        5
    wushuang  
    OP
       2014-05-17 13:05:08 +08:00
    @binux 我感觉是cookies的问题,但是不知道怎么处理,我把代码贴到了这里http://segmentfault.com/q/1010000000510093 ,麻烦帮看下,谢谢!
    pyshift
        6
    pyshift  
       2014-05-17 23:43:33 +08:00
    我感觉还是cookie的问题,com端的cookie很蛋疼,而且你抓包会发现还是会返回一个cn端的cookie值,如果没有硬性的去抓取com端,推荐还是去cn端抓吧,还能避开unicode转换编码。。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3468 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 33ms · UTC 11:45 · PVG 19:45 · LAX 04:45 · JFK 07:45
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.