微信小程序> 第一个爬虫小程序

第一个爬虫小程序

浏览量:821 时间: 来源:smallcases

前一段时间在一次网络直播视频课上学习了python爬虫,讲的内容就是爬取12306网站信息,可能是因为免费的公开课,一开始还以为真能讲到多么牛逼的东西,还没讲完直播的后半部分全程都是广告,很无语。当然关于剩下部分的代码老师也给了一些思路,顺着思路又琢磨了大概1.5天终于完成了。

直接上效果图:

小程序

在工程中最核心的就是获取消息列表,如下面所示:

小程序

接下来只要有足够的耐心观察列表,然后通过正则表达式或者其他一些拆分操作符就能把想要的信息提取出来。

源码如下:

import urllib.requestimport sslimport jsonfrom cons import cons2ssl._create_default_https_context = ssl._create_unverified_contextdef get_list():    address = 'https://kyfw.12306.cn/otn/leftTicket/query?leftTicketDTO.train_date={}'               '&leftTicketDTO.from_station={}&leftTicketDTO.to_station={}&'               'purpose_codes=ADULT'.format(train_date, from_station, to_station)    url = urllib.request.Request(address)    url.add_header('User-Agent', 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko)'                                 ' Chrome/45.0.2454.101 Safari/537.36')    html = urllib.request.urlopen(url).read()    dit = json.loads(html)    return dit['data']['result']# 车次3# 出发站台6# 到达站台7# 出发时间8# 到达时间9# 历时 = 10# 硬卧 =28# 软卧23# 软座 24# 无座 26# 高级软卧# 硬座29# 一等座 31# 商务座 32# 二等座30# 出发日期 13station_list = {}station_list2 = {}for i in cons2.split('@'):    if i:        temp_list = i.split('|')        station_list[temp_list[1]] = temp_list[2]        station_list2[temp_list[2]] = temp_list[1]train_date = input('出发日期:')from_station = station_list[input('出发地点:')]to_station = station_list[input('到达地点:')]print(train_date, from_station, to_station)title = '{0:12}{1:12}{2:12}{3:12}{4:12}{5:12}{6:12}{7:12}{8:12}{9:12}{10:12}{11:12}{12:12}{13:12}'.format(    '出发站台', '到达站台', '班次', '发车时间', '到达时间', '历时', '商务座', '一等座', '二等座', '软卧', '软座', '硬卧', '硬座', '五座')for i in get_list():    n = i.split('|')    n[6] = station_list2[n[6]]    n[7] = station_list2[n[7]]    result = '{0:12}{1:12}{2:12}{3:12}{4:12}{5:12}{6:12}{7:12}{8:12}{9:12}{10:12}{11:12}{12:12}{13:12}'.format(        n[6], n[7], n[3], n[8], n[9], n[10], n[32], n[31], n[30], n[23], n[24], n[28], n[29], n[26])    print(title)    print('')    print(result)    print('')


源码已上传github欢迎下载并指点,链接如下:

https://github.com/smallsmallcase/Python_Learning.git

版权声明

即速应用倡导尊重与保护知识产权。如发现本站文章存在版权问题,烦请提供版权疑问、身份证明、版权证明、联系方式等发邮件至197452366@qq.com ,我们将及时处理。本站文章仅作分享交流用途,作者观点不等同于即速应用观点。用户与作者的任何交易与本站无关,请知悉。

产品经理

手机 : 13312967497

擅长 : 小程序流量变现

扫码领取礼包

热门模板

  • 头条
  • 搜狐
  • 微博
  • 百家
  • 一点资讯
  • 知乎