地区列车经过查询

 1 # coding:utf-8
 2 #
 3 # 把qq.ip138.com/train/上面的列车时刻表抓取解析出来,输出在命令行显示,并存入一个文件train_time.text
 4 #
 5 import requests
 6 import time
 7 from bs4 import BeautifulSoup
 8 import random
 9
10 BSLIB = ‘html5lib‘
11 BASE_URL = ‘http://qq.ip138.com‘
12 UA = ["Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.115 Safari/537.36", "Mozilla/5.0 (X11; Linux x86_64; rv:54.0) Gecko/20100101 Firefox/54.0", "Mozilla/5.0 (X11; Linux x86_64; rv:54.0) Gecko/20100101 Firefox/54.0", "Mozilla/5.0 (X11; Linux x86_64; rv:54.0) Gecko/20100101 Firefox/54.0", "Mozilla/5.0 (X11; Linux x86_64; rv:54.0) Gecko/20100101 Firefox/54.0"]
13
14
15 def get_province(province, url,file):
16     print(province)
17     file.write("%s\n" % province)
18     HEADERS = {‘user-agent‘: random.choice(UA)}
19     r = requests.get(url, headers=HEADERS)
20     s = BeautifulSoup(r.text.encode(r.encoding).decode(‘gbk‘), BSLIB)
21     C = s.select(‘div > table > tbody > tr > td > a‘)
22     for c in C: # 每个城市
23         get_city(c.text, BASE_URL+c.get(‘href‘),file)
24     time.sleep(random.random()*30) # 防止因访问频繁而被拒绝请求
25
26
27 def get_city(city, url,file):
28     print(‘  %s‘ % city)
29     file.write("  %s\n" % city)
30     HEADERS = {‘user-agent‘: random.choice(UA)}
31     r = requests.get(url, headers=HEADERS)
32     s = BeautifulSoup(r.text.encode(r.encoding).decode(‘gbk‘), BSLIB)
33     T = s.select(‘div#checilist > table > tbody > tr‘)
34     for t in T: # 每个车次
35         t_text = "\t"
36         tt = t.select(‘td‘)
37         for i in tt: # 每个车次的具体每个信息用\t隔开
38             t_text += "%s\t" % i.text
39         print(t_text)
40         file.write(‘%s\n‘ % t_text)
41     time.sleep(random.random()*4)# 防止因访问频繁而被拒绝请求
42
43 if __name__==‘__main__‘:
44     out_file = open(‘train_time.txt‘, ‘w‘)
45     url = BASE_URL+‘/train/‘
46     HEADERS = {‘user-agent‘: random.choice(UA)}
47     r = requests.get(url, headers=HEADERS)
48     s = BeautifulSoup(r.text.encode(r.encoding).decode(‘gbk‘), BSLIB)
49     P = s.select(‘table[width="600"] > tbody > tr > td > a‘)
50     for p in P: # 每个省份
51         get_province(p.text, BASE_URL+p.get(‘href‘), out_file)
52
53
54
55
56 地区列车经过查询

原文地址:https://www.cnblogs.com/qinxiaoqin/p/9058007.html

时间: 2024-11-10 03:29:46

地区列车经过查询的相关文章

列车车次查询

<span style="font-size:18px;"><?php #设置编码 header("content-type:text/html;charset=utf-8"); #判断 进行接收 if(isset($_POST['submit'])){ #接收数据 $type = $_POST['type'] ; #火车类型 $start= urlencode($_POST['start']) ; #起始站 $end = urlencode($_

WebApp之JQuery Mobile实现火车列表信息查询

一.项目源代码如下: <!-- --><!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>列车时刻表查询</title> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel=

上线啦!新型肺炎确诊患者相同行程查询

近日,由360和无糖信息联合推出的新型肺炎确诊患者相同行程查询工具,可以方便查询哪些交通工具有已经确诊的病毒感染患者. 该工具的数据来源均人工搜集自经确认的官方公众号/微博/网站,并通过人工智能大数据平台,不断学习矫正,确保数据信息安全可靠. 使用方法:输入行程日期.车次或地区,即可查询是否为已披露有新型肺炎确诊患者同行的火车.飞机.地铁.大巴.公交等交通工具. 温馨提示:在此时间段同一地点购物人员和同乘人员,为了自己和他人的健康,请采取如下防护措施: 1. 同乘人员.可能接触人员返家后,暂不要

读数据库所有表和表结构的sql语句

SQL获取所有数据库名.表名.储存过程以及参数列表 1.获取所有用户名:SELECT name FROM Sysusers where status='2' and islogin='1'islogin='1'表示帐户islogin='0'表示角色status='2'表示用户帐户status='0'表示糸统帐户2.获取所有数据库名:SELECT Name FROM Master..SysDatabases ORDER BY Name3.获取所有表名SELECT Name FROM Databas

CDMA sid, nid, bid 含义解释

[email protected] celldb.cc SID 是系统识别码,每个地级市只有一个sid,是唯一的. NID是网络识别码,由各本地网管理,也就是由地级分公司分配.每个地级市可能有1到3个nid. BID 表示的是网络中的某一个小区,可以理解为基站. 以上三行是网上随处可见的解释, 大致上来说(sid, nid)定位城市, bid定位具体基站 问题1: 本来没有什么问题, 可是现实问题就是我们经常只有bid字段, 以及知道所在城市. 三条数据不完整, 如何查出具体经纬度? 解答1:

数据库设计规范

1.简介 数据库设计是指对一个给定的应用环境,构造最优的数据库模式,建立数据库及其他应用系统,使之能有效地存储数据,满足各种用户的需求.数据库设计过程中命名规范很是重要,命名规范合理的设计能够省去开发人员很多时间去区别数据库实体. 最近也因为工作需要所以整理出了这个word文档,望大家指正. 2数据库设计 数据库规划→需求分析→数据库设计→应用程序设计→实现→测试→运行于维护 2.1数据库规划 定义数据库应用系统的主要目标,定义系统特定任务,包括工作量的估计.使用资源.和需求经费,定义系统的范围

[转载] SQL获取所有数据库名、表名、储存过程以及参数列表

查询一个数据库中所有表字段属性的sql语句 1.获取所有用户名: SELECT name FROM Sysusers where status='2' and islogin='1' islogin='1'表示帐户 islogin='0'表示角色 status='2'表示用户帐户 status='0'表示糸统帐户 2.获取所有数据库名: SELECT Name FROM Master..SysDatabases ORDER BY Name 3.获取所有表名 SELECT Name FROM Da

用HAWQ轻松取代传统数据仓库(八) —— 大表分区

一.HAWQ中的分区表        与大多数关系数据库一样,HAWQ也支持分区表.这里所说的分区表是指HAWQ的内部分区表,外部分区表在后面"外部数据"篇讨论.在数据仓库应用中,事实表通常有非常多的记录,分区可以将这样的大表在逻辑上分为小的.更易管理的数据片段.HAWQ的优化器支持分区消除以提高查询性能.只要查询条件中可以使用分区键作为过滤条件,那么HAWQ只需要扫描满足查询条件的分区,而不必进行全表扫描.        分区并不改变表数据在segment间的物理分布.表的分布是物理

SQL Server 数据库设计规范

数据库设计规范 1.简介 数据库设计是指对一个给定的应用环境,构造最优的数据库模式,建立数据库及其他应用系统,使之能有效地存储数据,满足各种用户的需求.数据库设计过程中命名规范很是重要,命名规范合理的设计能够省去开发人员很多时间去区别数据库实体. 最近也因为工作需要所以整理出了这个word文档,望大家指正. 2数据库设计 数据库规划→需求分析→数据库设计→应用程序设计→实现→测试→运行于维护 2.1数据库规划 定义数据库应用系统的主要目标,定义系统特定任务,包括工作量的估计.使用资源.和需求经费