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
aljun
V2EX  ›  Python

想要深入修炼 python 爬虫的功力,有什么建议么?

  •  
  •   aljun · 2015-11-20 18:41:34 +08:00 · 4430 次点击
    这是一个创建于 3291 天前的主题,其中的信息可能已经有所发展或是发生改变。

    楼主自己以前是做 web 前后段的,现在对爬虫很感兴趣,看完了文档就直接上 urillib(1,2),scrapy,requests 等等的“框架”吧,然后基本的爬虫规则算是知道,但是发现现在的网站防爬虫厉害啊,比如现在就不懂怎么爬知乎了,另外还有其他的网站,而且验证码这关要怎么过`````````

    我是小菜,勿喷````

    28 条回复    2018-08-15 21:28:48 +08:00
    knightdf
        1
    knightdf  
       2015-11-20 21:04:55 +08:00
    说实话,一个 scrapy 就够你研究了,验证码普通的直接识别,发邮箱的自动从邮箱里读取,复杂的类似 Google 那样的手动输入或者 GG 。知乎应该是要登录,控制好规则不难,别想一台机器一个账号搞定
    knightdf
        2
    knightdf  
       2015-11-20 21:07:05 +08:00
    还有, urllib,requests 这不叫爬虫框架,只是个 http 库
    binux
        3
    binux  
       2015-11-20 21:23:18 +08:00
    你做 web 前后端的,不知道怎么过防爬虫?
    建议继续修炼 web 前后端的功力...
    aljun
        4
    aljun  
    OP
       2015-11-20 21:29:44 +08:00
    @binux 你是说记下 IP 防止爬虫么?请赐教`````
    aljun
        5
    aljun  
    OP
       2015-11-20 21:31:01 +08:00
    @knightdf 那我若是想好好地学学的话,哪些书或者路子比较好呢?
    binux
        6
    binux  
       2015-11-20 22:14:02 +08:00
    @aljun 你是做前后端的, 如果让你做防爬虫, 你怎么做? 怎么过?
    aljun
        7
    aljun  
    OP
       2015-11-20 22:32:16 +08:00
    @binux 测 user-agent ,服务器记 ip 做 403 ?还有呢?
    binux
        8
    binux  
       2015-11-20 22:41:37 +08:00
    @aljun 你都做了绕过?还是不能爬知乎?
    knightdf
        9
    knightdf  
       2015-11-20 22:55:27 +08:00
    @aljun 1 ,官方文档 2 ,源码 多看看源码,自然都理解了
    aljun
        10
    aljun  
    OP
       2015-11-20 23:11:26 +08:00
    @binux 好吧,那如果想更加精进自己爬虫的功力的话,最好看什么书比较好呢?
    binux
        11
    binux  
       2015-11-20 23:19:20 +08:00
    @aljun 前后端开发的书...
    bzzhou
        12
    bzzhou  
       2015-11-20 23:20:51 +08:00
    RFC2616 好好读读~
    haozhang
        13
    haozhang  
       2015-11-20 23:21:17 +08:00
    @bzzhou +1
    julyclyde
        14
    julyclyde  
       2015-11-20 23:23:52 +08:00
    urllib 、 requests 只能叫组件,还不能叫框架
    框架得承担起程序运行的重任,让人来写其中细小的部分
    aljun
        15
    aljun  
    OP
       2015-11-20 23:29:24 +08:00 via iPhone
    @julyclyde 所以我打了个引号⋯⋯
    julyclyde
        16
    julyclyde  
       2015-11-20 23:45:02 +08:00
    爬虫这个其实不适合于兴趣吧
    靠兴趣学习,是需要有成功给自己带来鼓励的
    而写爬虫,并不是一个只要足够聪明努力就一定能成功的方向
    greatghoul
        17
    greatghoul  
       2015-11-20 23:50:51 +08:00 via Android
    抓取百度贴吧的数据吧
    leavic
        18
    leavic  
       2015-11-20 23:50:55 +08:00
    scrapy 很容易上手的,就 scrapy 而言,你不需要深入太多,如果想了解其原理,你得学 twisted 框架。
    leavic
        19
    leavic  
       2015-11-20 23:52:29 +08:00
    验证码这个,我有点惊讶楼主你真是做后端的? cookies 是干啥的?
    aljun
        20
    aljun  
    OP
       2015-11-21 00:02:48 +08:00 via iPhone
    @leavic 那万一是那种很暴力和不讲道理的网站呢?
    qw7692336
        21
    qw7692336  
       2015-11-21 00:26:15 +08:00 via Android
    我搞过验证码识别,简单的验证码都是有规律的。
    只要是自己编写的验证码生成算法,都容易识别。
    aljun
        22
    aljun  
    OP
       2015-11-21 00:35:30 +08:00 via iPhone
    @qw7692336 求详情赐教 z (我比较渣⋯⋯)
    leavic
        23
    leavic  
       2015-11-21 00:38:17 +08:00
    @aljun 确实有部分网站验证码登录后只靠 keep alive session 维持 session 内的验证,这种着实恶心,实在不行找个 ocr api 帮你识别好了。
    zkwolf
        24
    zkwolf  
       2015-11-21 01:01:15 +08:00
    验证码可以。。。下载下来自己输,能用 cookie 登录的用 cookie 登录好了
    aisk
        25
    aisk  
       2015-11-21 01:11:50 +08:00
    全站爬微博!这个好玩并且有价值
    gouwudang
        26
    gouwudang  
       2015-11-21 11:04:14 +08:00
    楼主对爬虫感兴趣的话,欢迎发一份简历过来 [email protected] ,可以实践各种奇葩的问题和解决办法。
    wingyiu
        27
    wingyiu  
       2015-11-24 10:07:05 +08:00
    souwiki
        28
    souwiki  
       2018-08-15 21:28:48 +08:00
    建议学习基础的 requests 比较好 然后再学习深入的模块
    https://souwiki.com/532.html
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1164 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 20ms · UTC 23:57 · PVG 07:57 · LAX 15:57 · JFK 18:57
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.