/kuaikan-spider

Primary LanguagePythonApache License 2.0Apache-2.0

kuaikan-spider

快看漫画爬虫

程序运行

python mini_spider.py

Dependencies

安装Selenium with Python以及相关依赖 比如在CentOS上:

# 安装chrome浏览器
wget https://dl.google.com/linux/direct/google-chrome-stable_current_x86_64.rpm
yum localinstall google-chrome-stable_current_x86_64.rpm

# 验证chrome浏览器
google-chrome --version
# 输出
Google Chrome 84.0.4147.89
# 然后安装相应版本的chromedriver,这里是84

下载相应版本的chromedriver(需要翻墙) 解压后,将可执行文件添加进PATH环境变量中

chromedriver --version
# 输出
ChromeDriver 84.0.4147.30 (48b3e868b4cc0aa7e8149519690b6f6949e110a8-refs/branch-heads/4147@{#310})
pip3 install selenium
pip3 install beautifulsoup4
pip3 install configparser
pip3 install retrying

配置文件spider.conf

[spider]
url_list_file: ./urls ; 种子文件路径
output_directory: ./output ; 抓取结果存储目录
max_depth: 1 ; 最大抓取深度(种子为0级)
crawl_interval: 1 ; 抓取间隔. 单位:秒
crawl_timeout: 1 ; 抓取超时. 单位:秒
target_url: .*\.(gif|png|jpg|bmp)$ ; 需要存储的目标网页URL pattern(正则表达式)
thread_count: 8 ; 抓取线程数

种子文件每行一条快看漫画链接,例如:

https://www.kuaikanmanhua.com/web/comic/7047/ 0
https://www.kuaikanmanhua.com/web/comic/278647/

链接后面(用至少一个空格隔开)可以跟一个可选数字,表示从当前话之后还需要扒多少话。 如果不写或者是非>=0的数字格式,则默认扒到最后一话。

参考库

re(正则表达式)

gevent/threading(多线程)

docopt/getopt/argparse(命令行参数处理)

ConfigParser(配置文件读取)

urllib/urllib2/httplib(网页下载)

pyquery/beautifulsoup4/HTMLParser/SGMLParser(HTML解析)

urlparse(URL解析处理)

logging(日志处理)