一个爬取微信公众号文章的爬虫
github: https://github.com/bowenpay/wechat-spider
我们是一家帮助中国 5000 万贫困人口与社会公益组织的对接的公司。
我们通过国家和地方政府的“建档立卡”系统,获取到了一手的贫困户数据,目前有 100 万左右,总数为 5000 万,目前每个月都在增长。
为了帮助这部分贫困户对接公益机构,我写了这个微信爬虫,从微信公众号发布的文章中上找出最新的公益项目。
这种找项目的方式的可行性,我们还在试验中。
起初,为了快速上线,本爬虫的代码是基于我的另一个 通用爬虫项目 开发的,还不是很完善,所以希望任何对本项目感兴趣的人联系我,与我一同改进这个项目。
联系方式:在该 issue 下留言告诉我 点击去留言
1 ) 要爬取的微信公众号列表
2 ) 要爬取的文章关键字列表
3 ) 已经爬取的微信文章
4 ) 查看文章,并标记是否可用
5 ) 控制爬取进程数
django mysql redis lxml selenium
1 crayonyi OP 咨询下,现在获取微信文章的阅读数,都有哪些方法? |
2 em70 2016-09-20 19:29:54 +08:00 via iPhone 公司专业做公益,这是一个悖论 |
![]() | 3 ibufu 2016-09-20 19:34:33 +08:00 你应该去 py 社区吧。 |
![]() | 6 Chyroc 2016-09-20 20:01:58 +08:00 via iPhone |
![]() | 7 liangmishi 2016-09-20 20:27:12 +08:00 via Android @ibufu 有其他好的 py 社区吗 |
![]() | 8 lxyyzm 2016-09-20 20:28:53 +08:00 via Android 好贴必须顶 |
![]() | 9 yaotian 2016-09-20 20:39:37 +08:00 sogo 反爬机制一直更新。。。 |
10 vivagonna 2016-09-20 21:04:19 +08:00 还不太懂 python ,看起来不错, mark 一下 |
12 likai 2016-09-20 21:12:06 +08:00 @shoaly 中国公益发展不起来可和这个没关系.. 你们公司专门对接需要帮助的贫困户和公益组织.难道是像房屋中介一样收中介费?不然怎么养活公司? |
13 crayonyi OP ![]() @yaotian 用了代理池、 Firefox+selenium ,模拟人工点击,所以一直都挺稳定的。除非搜狗微信的页面样式换了,需要重新更新一下爬取模板。 |
![]() | 15 lixuda 2016-09-20 21:31:16 +08:00 不会出现验证码吗? |
16 wangchyz 2016-09-20 21:40:35 +08:00 用商业的手法做公益,不冲突 |
17 cqcn1991 2016-09-20 21:43:50 +08:00 非常支持! 希望以后有机会用到,和提 PR |
18 lcc4376 2016-09-20 21:46:25 +08:00 |
19 em70 2016-09-20 23:25:02 +08:00 via iPhone @crayonyi 红十字会也是这样想的,所以不被人信任。公司的天职是赚钱,当公众利益与股东利益冲突时候,公司应该坚定选择后者,所以公益的事应该给非盈利组织去做,比如维基百科 |
![]() | 21 PP 2016-09-21 00:43:18 +08:00 @lxyyzm 尽管人无完人,可是如果您在 V 站活动时间足够长,那么一定会有机会读到他的许多言论,您将会发现他的才智还是很不错的。用“智商捉急”来评论他人很不礼貌,还请尊重他人! |
![]() | 25 lxyyzm 2016-09-21 08:35:11 +08:00 via Android @PP 至少在这个问题上智商显得有点捉急 o(∩_∩)o ,不过还是多谢您的善意提醒!@em70 ,如果有冒犯到 ,向您道歉! |
![]() | 26 xi_lin 2016-09-21 09:18:49 +08:00 via iPhone 手动点赞 |
![]() | 28 est 2016-09-21 09:53:43 +08:00 其实爬 sogou 的都是爬的「订阅号」,真正的「公众号」 比如 招商银行 好像都爬不到。 |
29 crayonyi OP @est 你说的是服务号吧 好像确实没有。 不过服务号定位不一样,侧重于服务,而非宣传。一个月只能发 4 篇文章,量本身也不大。暂时还没有去考虑。 |
31 crayonyi OP @em70 公益行业是个互联网化程度很低的行业,也是效率较低的行业。 但这也正是我们的机会。 公益和商业是可以共赢的。公司如果考虑长远发展,不只顾眼前的利益,是能获取更大利益的。 |
32 rebelboy2 2016-09-21 10:55:06 +08:00 我给你说,爬这种数据都没法直接赚钱。 要爬爬那种数据本身就能兑换价值的,比如 国际机票,国内机票 这种投放到携程去哪平台,可以直接产生价值 |
![]() | 33 Kuo 2016-09-21 11:06:43 +08:00 看起来不错,感谢分享 |
34 crayonyi OP @rebelboy2 也有一些人找过我,要爬这种类型的数据、以及做数据分析和广告投放的。 但是公司的主业是做“中国 5000 万贫困人口与社会公益组织的对接”,所以就没有去做你说的“据本身就能兑换价值”的事情。 我一个人也有些忙不经过来。 不过这个爬虫是可以爬任意数据的,如果你感兴趣,可以做一些尝试。 我可以帮你搭建下基础环境。 |
36 crayonyi OP @xinali 在 github issue 下留言告诉我 https://github.com/bowenpay/wechat-spider/issues/1 ,这两天我把要做的事情,都列出来。 合作方式也写在上面。 |
![]() | 37 figofuture 2016-09-21 11:40:00 +08:00 mark |
![]() | 38 ljcarsenal 2016-09-21 11:55:50 +08:00 @rebelboy2 去哪携程的什么平台啊。。会抓取却不知道如何利用价值 |
![]() | 39 goodluck 2016-09-21 12:00:17 +08:00 要不是最近比较忙,我就来参加了。。。上班狗闲暇时间很少。。,经常加班。 |
40 bramblex 2016-09-21 12:05:49 +08:00 @likai 国外的 ngo 还真是这么做的, ngo 可以在捐款中抽取 ngo 运营费用,其中包括运营人员的基本工资。但是所有的开销啥的都必须是透明的,被监督的。 虽然做公益是靠理想,但是光靠理想会饿死的。然而广大圣母婊往往都喜欢脱离现实,不管不顾他人死活,只为了抒发原始情绪,感动自己。 |
![]() | 41 GitFree 2016-09-21 12:19:38 +08:00 老朋友手工点赞 |
![]() | 42 fhefh 2016-09-21 12:46:45 +08:00 先 mark |
45 crayonyi OP @bramblex 国内也有一些都是公开的,每年年报里面都有详细说明。 基金会中心网 http://www.foundationcenter.org.cn/ 有一个透明指数,可以看出行业内的透明水平。 |
46 globetour 2016-09-21 14:12:02 +08:00 via Android 搜平台的验证码很难搞,最好有失败和重试机制,以及能不能爬历史文章 |
![]() | 47 hustlzp 2016-09-21 14:45:04 +08:00 支持公益。 |
49 guotie 2016-09-21 14:54:13 +08:00 支持。 验证码可以找打码平台解决。 |
![]() | 51 colordancer 2016-09-21 17:54:30 +08:00 这个必需 mark |
52 chaichaichai 2016-09-21 23:12:43 +08:00 试一下抓新榜和传送门? |
53 crayonyi OP @chaichaichai 传送门和新榜的文章不全。 |
![]() | 54 lrh3321 2016-09-22 12:58:18 +08:00 马克一下 |
56 crayonyi OP @lixuda 爬取的时候,如果遇到验证码,则放弃本次爬取任务,并记录重试次数,然后将任务重新放到爬取队列。 下次爬取的时候,会随机选择一个代理 ip 爬取。 如此重复,直到不出现验证码,或者达到重试次数限制。 |
58 crayonyi OP @lixuda 1 淘宝上搜动态 vps ,有很多卖的。(便宜、方便) 2 自己找机房,拨号上网的那种,(今日头条用的是这种方式,稳定,快,可控) 我用的是这家的: https://item.taobao.com/item.htm?spm=a230r.1.14.1.RT0O2l&id=525941770043&ns=1&abbucket=11#detail |
59 crayonyi OP @lixuda linux 下和 windows 下都需要准备 3 个软件: 1 定时自动重新拨号软件(如拨号精灵) 2 实时获取 ip 并提交到服务端(在项目目录下有, bin/getNewIp.py ) 3 代理软件(如 cproxy ) |
![]() | 60 4BVL25L90W260T9U 2016-12-28 21:43:52 +08:00 @crayonyi Hi ,你还在做吗,你怎么知道 “今日头条用的是这种方式,稳定,快,可控” |
62 crayonyi OP @hadoop 需要在 vps 上部署一个脚本,实时获取 ip ,提交到服务端。 你说的把程序放在动态 ip vps 上跑也是可以的。 |
![]() | 64 4BVL25L90W260T9U 2017-02-04 11:25:44 +08:00 @crayonyi 哈哈,原来是前辈 |
65 toliho 2020-03-14 20:11:54 +08:00 可惜没有更新了,支持楼主和你的公益事业 |