1 Star 0 Fork 1

michael / Wenshu_Spider-1

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README
MIT

Scrapy框架爬取中国裁判文书网案件数据 enter image description here

中国裁判文书网 - http://wenshu.court.gov.cn/

Author :sunglasses:Henryhaohao:sunglasses:
Email :hearts:1073064953@qq.com:hearts:

:dolphin:声明

软件均仅用于学习交流,请勿用于任何商业用途!感谢大家!

:dolphin:介绍

该项目为Scrapy框架爬取中国裁判文书网案件数据(2018-10-20最新版)

  • 项目文件: Wenshu_Project
  • 运行须知:

数据库配置 : 运行前根据自己需要修改settings.py中的MongoDB数据库的配置

反爬问题 : 由于文书网的反爬监控很严格(一级验证码,二级验证码,JavaScript反爬,IP检测...),所有采用阿布云动态隧道代理方案,每一次request请求都是不同的IP,这样就不会触发反爬检测了~:sunglasses:。还是挺好用的,基本上每个IP都可以用,主要也还方便,直接用它的代理服务器发出请求,不用像一般的代理IP那样还需要取出IP,再代入IP进行请求。代理相关配置在middlewares.py的类ProxyMiddleware中。

爬取策略问题 : 现在的文书网总量已经高达5千多万份了,但是每个筛选条件下只能查看20页,每页10条。本项目以爬取1996-2000年的所有文书为例,大家有好的爬取方案,可以自行修改Param参数即可。

速度问题 : 配置在setting.py中:DOWNLOAD_DELAY = 0(无delay实现请求0延时);CONCURRENT_REQUESTS_PER_SPIDER = 5 (开启线程数为5);因为我用的代理配置是默认的每秒5个请求数,所以在此设置线程数为5;如果想爬取更快,可以加大代理请求数(当然是要money滴~),最高可以加到100的请求数,我滴天呀,那得多快啊!我现在的速度大概每秒爬取4个案件,加到100的话,估计每秒80个,一分钟4800个,一小时288000,一天就是6912000,目前总量5千4百万,大概8~9天就能爬完,如果在加上redis分布式的话,哇,不敢想象!:yum:

:dolphin:运行环境

  • Version: Python3
  • JS解析环境: Nodejs
    有不少小伙伴向我反映运行后报错:execjs._exceptions.ProgramError: TypeError: 'key' 为 null 或不是对象
    解决方案如下:
    如果pyexecjs包没问题的话,那就是没有安装nodejs的问题; 因为你没有安装nodejs的话默认js解析环境是JScript, 但是项目中的js代码有的地方需要node环境才能运行, 所以需要装一下Nodejs再运行就好了;
    注意: nodejs安装完成后记得把IDE关闭重新打开,比如pycharm,不然IDE不会监测到jscript引擎的变化,导致依然报错 关于NodeJs安装可以参考这篇文章: https://www.cnblogs.com/liuqiyun/p/8133904.html

:dolphin:安装依赖库

pip3 install -r requirements.txt

:dolphin:存储数据库

Database: MongoDB

:dolphin:相关截图

  • 运行过程

    enter image description here
  • 数据截图

    enter image description here
  • 阿布云

    enter image description here enter image description here

:dolphin:总结

最后,如果你觉得这个项目不错或者对你有帮助,给个Star呗,也算是对我学习路上的一种鼓励!
哈哈哈,感谢大家!笔芯哟~
:cupid::cupid:

MIT License Copyright (c) 2018 Henryhaohao Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

简介

:rainbow:Wenshu_Spider-Scrapy框架爬取中国裁判文书网案件数据(2018-11-14最新版) 展开 收起
Python
MIT
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
Python
1
https://gitee.com/zhaodianshiqingzuo/Wenshu_Spider-1.git
git@gitee.com:zhaodianshiqingzuo/Wenshu_Spider-1.git
zhaodianshiqingzuo
Wenshu_Spider-1
Wenshu_Spider-1
master

搜索帮助