Skip to content

tkanng/Train-Crawler

Repository files navigation

1. 基本介绍:

  • config.py:配置信息文件

  • generate_task2db.py:从12306网站上下载train_liststation_name信息,对数据进行初步处理。生成两类任务:车次时刻表信息抓取任务(train_crawler.py)与车次经停靠站点信息(path_stations_crawler.py)。_id(主键):任务抓取url参数。车次时刻表信息抓取任务,对应起始站代码和终点站代码;车次经停靠站点信息抓取任务,对应车次序号train_no、起始站代码和终点站代码。status: 任务执行状态。以0作为任务抓取的初始状态值,表示UN_PROCESSED1表示PROCESSING,2表示PROCESSED

  • train_crawler.py: 车次时刻表信息抓取爬虫。

  • path_stations_crawler.py: 经停靠站台信息抓取爬虫。

  • get_page.py : 为防止反爬虫机制,由requests库改进而来的网页请求模块。这个模块中,集成了ip切换机制与其他强有力的反反爬虫技巧。

  • adsl_server.py: ADSL拨号服务器运行的脚本。ADSL服务器与爬虫服务器,通过redis数据库进行通信。

2. 使用方法:

  • 配置config.py: 在config.py中添加对应的MongoDB地址和redis地址(在本项目中不是必须)。

  • 在对应数据库中新建两个collection,在默认代码中两个collection位于crawler_task_status数据库下,分别是train_info_testpath_stations_test

  • 数据存储方式,可以在train_crawler.py(车次时刻表信息)path_stations_crawler.py(某一车次停靠站详细信息)

About

12306火车时刻表信息爬虫,车次经停站信息爬虫,ADSL反反爬虫机制。

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages