首页   注册   登录
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

爬取上千个不同类型的网站中的文章,大佬们有没有啥解决思路?

  •  
  •   Wh0amis · 70 天前 · 2325 次点击
    这是一个创建于 70 天前的主题,其中的信息可能已经有所发展或是发生改变。
    目前需求是这样的:有 3000 多个不同类型的咨询网站。这些网站包含有个人博客,新闻网站,还有一些微信公众号。要从这 3000 多个网站里面爬取更新的文章标题及 URL 还有发布时间。现在有点懵。写爬虫的话难道要一个站一个规则么。有没有统一爬取的解决方案呢?
    35 回复  |  直到 2019-08-13 19:02:18 +08:00
        1
    smallpython   70 天前
    文章标题及 URL 还有发布时间, 这三个信息有什么用吗?
    先把所有网页都保存下来,提取的事情慢慢弄
    结果不要求百分百准确的话可以层层过滤
        2
    yuhao2019   70 天前
    同问,
        3
    foxyier   70 天前
    需要人工去查看这些网站的相同点, 根据相同点编写通用性更强的匹配规则。 如果能完全统一爬取的话, 爬虫工程师早就都失业了
        4
    snappyone   70 天前
    我写了个通用爬虫平台,根据配置化来爬取不同网站,思路供参考
        5
    Gakho   70 天前
    这个需求似曾相识。。。还好把这个东西外包出去了
        6
    Dex7er   70 天前
    我只能说你这个输入网址就能自动爬取网站更新内容的设想很有价值。。。目前做得最好的是谁来着,google ?
        7
    lihongjie0209   70 天前
    没有, 规则只是一部分, 每个站的反爬估计就要单独写了
        8
    zqjilove   70 天前   ♥ 1
    如果是文章类型的网站,相对来说,还有解决方式,无需每个网站写规则。只需要通过正文提取的方法来实现,目前也有很多类似的源码可以用( readability、Html2Article 等),坏消息就是,正文提取方式还是会提取到不需要的信息,或者提取不到正文的情况。
        9
    zqjilove   70 天前
    可以看看这个帖子 /t/309948
        10
    Northxw   70 天前
    爬虫配置系统可以有,但是匹配规则还是要自己写,这个目前没办法的
        11
    augustheart   70 天前
    我抛个砖头,你可以看看有没有帮助。我不是做这个的,就一瞎说。
    你可以研究一下浏览器(比如火狐)的阅读模式是如何定位主要文章内容的。
        12
    TopcoderWuxie   70 天前
    抽象出来底层方法,每个网站一个 xpath 是否可行?我看我们公司的爬虫一周几百个忙的不亦乐乎。
        13
    rayhy   70 天前
    之前一直在学生团队里做这种东西的外包。。。思路是把 html 转成 xml,然后每个网站都写 XQuery 来提取信息。相当于是每个都写配置文件。然后把写配置文件,更新配置文件的任务外包给大学生就行。
        14
    locoz   70 天前
    只是文章类的东西的话,可以用智能提取,有钱的话直接上 diffbot,效果很好。
        15
    tikazyq   70 天前 via iPhone
    试试 Crawlab 的可配置爬虫( python 版本),上百个不成问题。请关注最新版本的更新,后期会将可配置爬虫更新到 Golang 版本。

    https:// github.com/tikazyq/crawlab
        16
    locoz   70 天前
    没钱的话就拿开源的用用,加一层人工检测的步骤,智能提取的有问题就手动标规则。
        17
    tikazyq   70 天前 via iPhone
    当然还有一种思路就是写通用爬虫,借助一些算法智能识别所需抓取字段,但这对技术要求比较高
        18
    fifa666   70 天前
        19
    alaikis   70 天前
    就这几个字段,无法就是一个分页方式,一个 xpath 的解析规则,然后用一个表存一下规则就好了
        20
    beastk   70 天前 via iPhone
    老铁,规则还是得自己弄,你又不是搞人工智能对不
        21
    heart4lor   70 天前
    两个想法,一个是每个网站存一组 xpath,对应你需要的信息;另一个是爬取所有文字部分,根据一定的特征、规则来分辨是标题还是正文还是时间,这三者区别都挺大的。人工不好编写规则的话甚至可以考虑写个深度神经网络训练一下提取特征……
        22
    youmumzv2   70 天前
    要不要试试我们开发的后羿采集器,基本 90%的网站都可以自动解析网页自动识别出标题时间这类的字段,而且基本功能都是免费的
        23
    mamahaha   70 天前
    别做梦了,这个需求就算用人工智能,也不是一般的人工智能,你这样闭着眼睛爬,估计也就能爬来一堆广告。
        24
    Cheez   70 天前
    直接用别人的软件。

    直接用别人的框架。
        25
    aaronhua   70 天前
    已加入豪华收藏套餐
        26
    ErrorMan   70 天前 via Android
    如果是 html5 规范应该有类似 article main title 这样的标签来标记对应数据,可以按这个来提取,不过国内网站大部分都没这个习惯吧
        27
    largecat   69 天前 via Android
    url 和标题很容易。

    发布时间我觉得设定为你第一次爬取到的时间就行了,
    挂服务器上就不用管了最省事,几分钟弄完。反正是机器干活,带宽放着就是被拿来用的。
        28
    habicat   69 天前
    一般都是通用爬虫+算法提正文+配置文件提标题&时间
        29
    habicat   69 天前
    我们刚好在干这个 兄弟不考虑外包。。。
        30
    jinxx1   68 天前
    newspaper3k 这个库能解决很多问题。
        31
    Wh0amis   67 天前
    表哥们的思路很广。很感谢各位表哥的回复。听了各位表哥的建议个人感觉还是得针对目标网站特征划分出群体特征,在根据群体特征编写相应的通用规则。这样才能有效减少工作量。再次感谢楼上各位表哥。
        32
    explorer123   67 天前
    微信公众号部分可以参考下我这个项目中的源代码 https://github.com/LeLe86/vWeChatCrawl
        33
    deepall   66 天前
    可以看看 diffbot 这个公司的产品,很牛逼,可惜价格有点高
    或者看看 chrome 的一个插件,简悦,和 safari 上面的阅读模式很像
    我之前公司就是这样,1000 多个网站,1000 多套规则,一个爬虫文件
        34
    MrZok   66 天前
    有什么最优方法么
        35
    chengxiao   66 天前
    舆情监控吧....readability,goose 匹配 tiitle description 和正文内容吧
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   1521 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 26ms · UTC 00:18 · PVG 08:18 · LAX 17:18 · JFK 20:18
    ♥ Do have faith in what you're doing.