求教,公司要重新做爬虫架构

2019-10-22 20:21:10 +08:00
 yixiugegegege

最近时间比较充裕,准备重新做一下公司的爬虫架构

目前的爬虫基本是个人写个人的,一个项目一个大文件,从采集,解析到入库,

各个服务器都有单独部署,(爬虫服务器阿里云的 18 台).

然后自己对重构或者优化爬虫的架构没有什么经验,

所以想请教一下 v 友,公司的爬虫架构

目的:便于爬虫管理,还有新项目开展

5194 次点击
所在节点    Python
22 条回复
ClericPy
2019-10-22 20:31:39 +08:00
这东西说起来简单, 实现起来费了大劲了...

偷偷地说: 等那个人来吧
Trim21
2019-10-22 20:32:15 +08:00
@ClericPy 这次等的是哪个人…
snappyone
2019-10-22 20:45:07 +08:00
抽象逻辑,设计成可配置化
zpfhbyx
2019-10-22 20:46:12 +08:00
@Trim21 Policemen
ClericPy
2019-10-22 20:51:51 +08:00
@Trim21 那个 XXlab...
没自研能力的话, 直接套 Scrapy 或者 pyspider (貌似作者也在 V2) 也算是省心省力的, 那个前后端现成的 lab 因为源码没读过也没用过, 就不盲目推了, 不过看 demo 是挺好看的

有一次还看到个跑协程的框架, 名字记不起来了

PS:

前几天试了下 Python 并发能力, 访问 gin 在本地接口, 不知道是不是 aiohttp 有 C 加成的原因

3.7.1 (v3.7.1:260ec2c36a, Oct 20 2018, 14:57:15) [MSC v.1915 64 bit (AMD64)]

Aiohttp (没有 uvloop)
async_test: 2000 / 2000, 100.0%, cost 1.4881 seconds, 1344.0 qps.

requests+threading

2000 / 2000, 100.0%, cost 4.695 seconds, 426.0 qps.

golang, net/http
2000 / 2000, 100.00 %, cost 0.33 seconds, 5990.95 qps.
zhangslob669
2019-10-22 20:54:37 +08:00
微服务化
ClericPy
2019-10-22 21:06:02 +08:00
聚焦爬虫常见的组件就是下载器, 解析器, 存储器
此外还得考虑调度器, 代理池, 日志系统那些
避免重复数据和压力过大, 可以在 解析器-存储器 以及 调度器-下载器 之间加上消息队列服务. 以上 4 或 5 个部件统一以后, 拆起来就容易了. 必要时候下载器和解析器之间也可以缓存原始 Response
代理池得维护一份, 毕竟有些不存在的网站也要采集, 还得避免限频反爬
日志系统做好分析, 方便报警和调试

爬虫多了确实难管理, 最好还是套框架重构(舍弃旧代码)
reus
2019-10-22 21:09:26 +08:00
注意不要爬个人信息,违法
kingfalse
2019-10-22 21:10:16 +08:00
我们目前是热更新,实时下发代码编译替换
Rwing
2019-10-22 21:11:58 +08:00
hanbing135
2019-10-22 21:24:06 +08:00
注意坐牢啊
imxieke
2019-10-22 21:48:57 +08:00
哈哈 楼上几个感觉和我心情有点像 下面的我感觉要背下来了 (敲黑板)

```
什么样的爬虫是违法?
如果爬虫程序采集到公民的姓名、身份证件号码、通信通讯联系方式、住址、账号密码、财产状况、行踪轨迹等个人信息,并将之用于非法途径的,则肯定构成非法获取公民个人信息的违法行为。
除此之外,根据相关规定,对于违反国家有关规定,向他人出售或者提供公民个人信息,情节严重的,窃取或者以其他方法非法获取公民个人信息的,均可构成成“侵犯公民个人信息罪”,处三年以下有期徒刑或者拘役,并处或者单处罚金;情节特别严重的,处三年以上七年以下有期徒刑,并处罚金。
重点关注:下列情况下,爬虫有可能违法,严重的甚至构成犯罪。


1.爬虫程序规避网站经营者设置的反爬虫措施或者破解服务器防抓取措施,非法获取相关信息,情节严重的,有可能构成“非法获取计算机信息系统数据罪”。


2.爬虫程序干扰被访问的网站或系统正常运营,后果严重的,触犯刑法,构成“破坏计算机信息系统罪”


3.爬虫采集的信息属于公民个人信息的,有可能构成非法获取公民个人信息的违法行为,情节严重的,有可能构成“侵犯公民个人信息罪”。

作者:ityouknow
链接: https://juejin.im/post/5da69acff265da5b783f1028
来源:掘金
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
```
stanjia
2019-10-22 21:51:30 +08:00
首先应熟读下法律
wangyzj
2019-10-22 22:11:43 +08:00
死亡边缘试探
mcorley
2019-10-23 08:57:22 +08:00
②相关法律依据:《刑法》第 285 条

[非法侵入计算机信息系统罪] 违反国家规定,侵入国家事务、国防建设、尖端科学技术领域的计算机信息系统的,处三年以下有期徒刑或者拘役。

[提供侵入、非法控制计算机信息系统程序、工具罪] 提供专门用于侵入、非法控制计算机信息系统的程序、工具,或者明知他人实施侵入、非法控制计算机信息系统的违法犯罪行为,而为其提供程序、工具,情节严重的,依照前款的规定处罚。

单位犯前三款罪的,对单位判处罚金,并对其直接负责的主管人员和其他直接责任人员,依照该款的规定处罚。

看到了吧!别以为写了个 NB 的爬虫破解程序丢到 GitHub 上,就没事。如果被人用来从事非法勾当,你也是要坐牢滴。
ThinkCat
2019-10-23 09:10:22 +08:00
楼主快跑,小心坐牢
abcbuzhiming
2019-10-23 10:12:27 +08:00
我提醒各位,国家对之前一段时间各种隐私,保密数据被泄露,滥用现象是非常不满的,我们这边有专人来讲课提到:会展开集中整治,且整治期间是从严从重的。从严从重的啥意思,也就是只要涉及到的,不管你有没有从中牟利,东西经了你的手,都会抓你。之前对各类毒博、菠菜游戏的整治也是同样的策略,所以连网上开源的棋牌代码都消失了。所以各位,这段时间建议别碰爬虫类的东西,等风头过了再说
ycbb123
2019-10-23 10:24:57 +08:00
这段时间严打违法爬虫
keventseng
2019-10-23 11:25:52 +08:00
爬虫写得好,老板没烦恼;
爬虫用得好,局子进得早;
数据玩得溜,米饭吃个够;
fantasticfears
2019-10-23 13:27:02 +08:00
Orleans 做了个框架。发现能出错的地方真得多,工作量巨大。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/611873

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX