首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python 学习手册
Python Cookbook
Python 基础教程
Python Sites
PyPI - Python Package Index
http://www.simple-is-better.com/
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
V2EX  ›  Python

requests 的作者的新项目 requests-html

  •  1
     
  •   yangzhezjgs · 2018-02-28 12:05:36 +08:00 · 9708 次点击
    这是一个创建于 592 天前的主题,其中的信息可能已经有所发展或是发生改变。
    https://github.com/kennethreitz/requests-html

    This library intends to make parsing HTML (e.g. scraping the web) as simple and intuitive as possible.

    When using this library you automatically get:

    -Full JavaScript support!
    -CSS Selectors (a.k.a jQuery-style, thanks to PyQuery).
    -XPath Selectors, for the faint at heart.
    -Mocked user-agent (like a real web browser).
    -Automatic following of redirects.
    -Connection – pooling and cookie persistence.
    -The Requests experience you know and love, with magical parsing abilities.

    对 requests 做了封装,添加了解析 html 的接口,总代码现在是 399 行,还在更新
    第 1 条附言  ·  2018-02-28 21:59:28 +08:00
    目前版本还不稳定,作者应该还在修改更新中,出现问题请稍安勿躁
    现在代码新增为 484 行(昨天我刚看到的时候是 200 多行)
    44 回复  |  直到 2018-05-27 21:31:45 +08:00
        1
    cy97cool   2018-02-28 12:13:53 +08:00 via Android
    mark 先 star 为敬
        2
    lhx2008   2018-02-28 12:24:06 +08:00 via Android
    把 pyquery 和 xpath 弄进来了,还有自动 useragent,是要一统江湖的节奏
        3
    co3site   2018-02-28 12:30:45 +08:00 via Android
    观望中,先 star
        4
    Sanko   2018-02-28 12:33:37 +08:00 via Android
    orz
        5
    prolic   2018-02-28 12:34:51 +08:00
    star 为敬,beautifulsoup 用着还是不够爽
        6
    weiwio   2018-02-28 12:35:31 +08:00 via Android
    今天看了一下,原来是新项目,很有希望啊
        7
    fyyz   2018-02-28 13:03:12 +08:00
    吊炸天
        8
    tuding   2018-02-28 13:07:33 +08:00
    这个作者好腻害,好多牛逼项目
        9
    steveway   2018-02-28 13:10:59 +08:00 via Android
    看作者就 star 系列
        10
    lfzyx   2018-02-28 13:13:14 +08:00
    可以放弃 bs4 了?
        11
    CSM   2018-02-28 13:17:17 +08:00
    期待有人封装 aiohttp
        12
    sunwei0325   2018-02-28 13:19:50 +08:00
    如果下载和解析分开异步进行就好了
        13
    angelshq   2018-02-28 13:30:06 +08:00
    mark
        14
    Zzde   2018-02-28 13:30:37 +08:00 via iPhone
    Mark
        15
    find456789   2018-02-28 13:33:39 +08:00
    不太明白,这个 库 用来替代谁的?
        16
    find456789   2018-02-28 13:42:28 +08:00
    请问这个库 是 requests+bs4 吗
        17
    douglarek   2018-02-28 13:59:00 +08:00   ♥ 1
    xxx for humans 又来了?没有 xxx 之前莫不是大家都在吃猪食 ?
        18
    soulmine   2018-02-28 14:04:26 +08:00
    @find456789 大约看了下 大概类似于 requests+bs4+selenium/phantomjs 不过后面两个现在只是封装了一小部分功能 比如通过 css selector 解析或者执行 js 代码这种
        19
    soulmine   2018-02-28 14:05:00 +08:00
    @sunwei0325 你可以自己异步啊 比如用队列什么的
        20
    hugo2lee   2018-02-28 14:12:03 +08:00
    Only later versions of Python 3 are supported. 好评
        21
    zhoulv2012   2018-02-28 14:46:06 +08:00
    都是实用的功能啊!
        22
    knightdf   2018-02-28 14:47:53 +08:00
    还可以解析 JS ?怎么感觉是个爬虫库了
        23
    dqh3000   2018-02-28 15:12:37 +08:00
    哎呀呀呀呀?

    不错不错……这个好
        24
    ioven   2018-02-28 15:19:41 +08:00
    https://github.com/scrapy/parsel 一直用的这货,re css xpath 用起来很爽
        25
    Mavious   2018-02-28 15:36:53 +08:00
    非程序猿表示非常感兴趣。requests 太好用了,太是适合我等毫无基础的小白了,轻松上手。
        26
    sowish   2018-02-28 15:44:06 +08:00
    看了下,安装 requests-html 同时需要 bs4,lxml 等库,估计还是依赖于这些库
        27
    ospider   2018-02-28 16:24:29 +08:00 via Android
    恕我直言,没看懂这个库存在的意义,lxml 足够好用了,重点是 xpath 这种东西应该存在配置里,而不是把解析逻辑写在代码里
        28
    wfd0807   2018-02-28 17:43:24 +08:00
    Full JavaScript Support by Chromium headless mode.
        29
    wfd0807   2018-02-28 17:44:01 +08:00   ♥ 1
    the first time you ever run the render() method, it will download Chromium ...
        30
    yech1990   2018-02-28 17:46:02 +08:00
    399 行代码已经 4600 stars 了。

    ---

    另外作者现在摄影技术也逆天。
        31
    yech1990   2018-02-28 17:48:53 +08:00
    看依赖需要 bs4
    但代码中又没有出现?
        32
    yangzhezjgs   2018-02-28 17:54:48 +08:00
    @yech1990 这个应该是之前用了 bs4,后来又改用其他的,但是依赖里面没有去掉,因为昨天我看的时候代码才 200 行
        33
    wellsc   2018-02-28 17:55:51 +08:00 via iPad
    像是拯救世界
        34
    tcpdump   2018-02-28 18:04:07 +08:00
    文档好多错误,跑不起来
        35
    VicYu   2018-02-28 18:12:52 +08:00
    for the horde
        36
    abmin521   2018-02-28 19:03:33 +08:00 via Android
    顶 k 神下
        37
    Ginson   2018-02-28 19:16:19 +08:00
    研究中。文档确实错误挺多
    Tutorial 第一行代码 from requests_html import HTMLSession 就报错,应该 import Session
        38
    LINAICAI   2018-02-28 19:21:12 +08:00 via iPhone
    明显是爬虫嘛……
        39
    WildCat   2018-02-28 19:43:43 +08:00
    感谢作者,正需求这样的库!



    @Ginson
    import HTMLSession 报错的原因是因为它会自动加载 fake_useragents.json,你的网络可能不能访问 cloudfront。
    认真读一秒报错提示吧。
        40
    Ginson   2018-02-28 20:10:09 +08:00
    @WildCat 谢谢,我还在研究。不过报错提示我实在没看出啥…
        41
    WildCat   2018-02-28 20:29:37 +08:00
    @Ginson 你这个应该也是同样的问题我觉得。。。
    换 jupyter lab/notebook 吧,命令行 IPython 还是有点不好用。
        42
    jimmyye   2018-02-28 21:26:41 +08:00
    版本更新太快,所以用的时候要注意安装的版本和 Github 上的代码 commit 时间。
        43
    pdog18   2018-04-16 17:08:44 +08:00
    我想问下这个库可以将<script>标签里面的 js 代码快速转换成 python 对象吗?有什么办法吗?正好遇到这个问题。
    现在只能换成字符串强行切
        44
    windcode   2018-05-27 21:31:45 +08:00
    目前已经 700 行代码,7700+ star,有没有人用过,感觉如何?
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   859 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 82ms · UTC 22:18 · PVG 06:18 · LAX 15:18 · JFK 18:18
    ♥ Do have faith in what you're doing.