2017年,大家很期待吴道长的小黄文吧……今天来了,写完开场之后,虾神就闭嘴了,保留原汁原味的道长风格小黄文……

最近换了一个工种,成了闽清十万大山里的水库巡查员。所以晚上比较有时间进行放空自己个儿。

好久不见的老板在QQ上联系了,看看能不能帮忙搞一份某城市的公交站点数据,搁过去,我估计就是翻着白眼说手绘哪!现在嘛,我估摸着爬虫估计就差不多能搞定了。咨询了一下魔都浦西的马总,确实可行并且发了API资料,着手就开始写代码了。

老板问了我多久能出结果,我报大概了1个星期的工时。其实我觉得大概半天就能写完,但是以我拖延症的尿性,我觉得我没那么快能写完,而且还要调试,而且做的中途指不定会出什么幺蛾子,额,乌鸦嘴,确实出幺蛾子了。

爬虫

那么关键就是怎么定制这个URL?高德API有完整的URL请求参数结构表:

需求中要爬的就是公交站点,那么就需要types中查询公交的POI编码——【150700】:

URL='http://restapi.amap.com/v3/place/text?&types=150700&city=370100&citylimit=true&output=json&offset=20&page=1&key=……………’

按照约定,返回是一份json文件,用simplejson这个包,就可以对结果进行解析,提取需要的内容。

Json文件结构可以参考高德API的返回结果参数说明:

解析后站点的名字,经纬度及该站牌所经过的线路,我存成一份txt,优势在于比excel更方便打开读取。

解析

初步已经有站点信息,那么我自己再加个需求,以每条线路为单位,反演出它的所经过的站点,这里要说到我的一个代码习惯,在把数据封存成一个现实文件的同时,我会在设计一个字典DictKey来作为一个全局变量来存这些信息,为啥不用列表,在于字典有key而且嵌套的结构更加鲜明。只是我有一个疑虑,这么做会不会增加对内存的压力,毕竟我做的东西的数据量很小。如果涉及到大数据,就不好说了。

这里我做了一个涵盖所有线路的列表Alist,我只需要迭代遍历去判断Alist,IN or NOT IN 在DictKey中的value就行。然后就是再存成一个字典,再打印出来。

这里貌似把工作都完成了,之后我做验证时候,发现线路中会莫名缺了一些站点,导致这条线路不全,不断在代码间加 print,无果,折腾了一个晚上,这就是之前所谓的幺蛾子。最后我在迭代print中看到了两个名字相同的站点,日,一个城市两个站点叫一样的名儿,这让我想起了济南著名的大观园站,十字路口各有一个站点,都叫大观园站,每个站点经过的线路还不尽相同,当初的规划师脑子让驴逼夹过。

既然知道问题,那就是解决问题。多加了一个 if判断,遇重加编号:

如此这般,完成了,后期为了私人共享,我做成了一个pyt工具:能够选好山东某个市直接爬取数据。

 结果

散点大致能框架出聊城的交通网络,蓝色是我在学校出行唯二的交通工具—7路,这一头是聊大东校医院,那一头是一个冤家,,,

这边想到老北京一个典故:有一样吃食,叫铜锅涮肉,讲究是师傅将羊肉细细切成薄片后一涮的滑嫩。在簋街,有一个字号叫裕德孚,现在掌柜的爷爷于德龙,在当年切肉师傅行里唯一拿的是是全角活工资,即抓羊,砸羊,醒肉,切肉一整套活;而其他师傅最多只能拿个半角活的工资。或许最近我就做了一个全角活,至于您怎么下口,就看您怎么挖掘可视化了。

本文作者为吴道长,授权虾神独家发表。

版权归属吴道长所有。

[吴道长作品]记一次不成熟的爬虫相关推荐

  1. tkmybatis 子查询_真假童子命符箓道长教你如何查询

    童子命查询方法一: 童子命在相术里,指的是一生都霉运连连如过本命年的人. 古代关于真童子命查询有口诀"春秋甲寅子,冬夏卯未辰: 金木乙卯未,水火庚辛壬: 土命逢辰巳,童子定为真" ...

  2. php 有道 翻译 空白,记“有道翻译API”与PHP的结合

    记"有道翻译API"与PHP的结合 时间 :2016-10-3  评论: [ 0 ] 条  浏览: [ 664 ] 次 废话不多 直接上源码(api接口隐藏) 有一个新函数 会在最 ...

  3. 图解python吴灿铭网盘_吴灿铭作品_吴灿铭简介_吴灿铭作品大全-当当网

    新华书店正版,关注店铺成为会员可享店铺专属优惠,团购客户请咨询在线客服! 吴灿铭,**环 编著 / 2016-08-01 ¥42.50定价:¥59.00(7.21折) 正版图书 放心选购 售后无忧 / ...

  4. java游戏真武青云道长,天涯明月刀手游真武技能详情一览 真武技能怎么样

    天涯明月刀手游真武技能怎么样,天涯明月刀手游即将迎来公厕,新门派真武即将上线,那么具体的技能怎么样呢,下面为大家带来了详细的攻略内容. 天涯明月刀手游真武技能详情一览 真武不仅再现经典的视觉形象,更还 ...

  5. 淘派上架预告 | 吴志兴作品 12.15 20:00开售

    商务合作:business@taopainft.com 明晚 20:00,数字藏品发行及交易平台淘派将上架由艺术家吴志兴创作的数字藏品. 发行详情 <岛1> 发行数量:10    发行价格 ...

  6. 记一次分布式B站爬虫任务系统的完整设计和实施

    今天带来一个有意思的东西-分布式B站爬虫任务系统 这个小玩意源于上周在研究Azure的时候,发现云服务厂商都在推荐轻量级的存储队列服务,用来取代原有的比较重的消息队列服务,具体来说,比如阿里云就推荐使 ...

  7. php获取td数据,记一次用PHP做爬虫获取全市高考报考数据

    去年使用了Python的BS4+Requests爬取了这个数据,但是不慎rm -rf / 了,这次使用PHP重新爬取一次. 本文仅供学习交流,不要干坏事哦~ 首先打开招生考试信息网的查询页面: 然后输 ...

  8. 记一次Selenium框架的爬虫遇到下拉框页面的解决经历

    背景 最近有一个项目需要使用爬虫从某网站抓取全国的医院名称,等级,地址等信息 爬取的url为https://some/website/that/i/can/tell/you/sorry 用浏览器打开这 ...

  9. 记第一天使用node做爬虫——爬取猫眼电影票房总榜以及指定电影的豆瓣评论前200条

    首先,我是一个做前端的应届生,今天朋友想让我帮忙爬取猫眼电影票房总榜的数据,但是我之前一点都没接触过爬虫,但我还是说:okk,我试试: 然后试试就逝世,各种坑接踵而来: 提前声明:这篇文章暂时只是获取 ...

  10. php 获取搜狗微信 sn,记搜狗微信号搜索反爬虫

    反爬虫 RSS Factory前段时间又出问题了,访问微信公众号RSS一直500,完全没法用了. 经调试,发现由于爬取数据太频繁,触发了搜狗微信公众号的反爬虫,探索了下反爬虫的规则: 没有带Cooki ...

最新文章

  1. 通过sort()方法实现升序和降序排列
  2. mysql导出数据库报错,navicat 导入导出数据库报错的解决
  3. 梅捷SY-A780G+冷启动黑屏,需Reset才能进入系统
  4. Office资源汇 | Office 365 微助理功能介绍 4
  5. cheerio api
  6. P3301 [SDOI2013]方程
  7. c语言饭卡服务程序设计思路,C语言设计—饭卡管理程序.doc
  8. c++学习书籍推荐及理由
  9. 国外资源 - 含技术 - 收集
  10. 校招——2021多益网络软件开发笔试和面试
  11. 使用set集合去除重复元素
  12. vant vant-list碰到的坑
  13. MAC免费解压软件——解压RAR、7Zip等五六十种格式
  14. js jquery给input标签赋值、取值
  15. linux以root账号登陆gnome,CentOS 7 - 以root身份登入Gnome
  16. 单电源运放一阶滤波器
  17. 戴尔服务器开启虚拟机,Windows 服务器2019中的受防护虚拟机增强功能
  18. [Android实例] [版主原创]ScrollView嵌套ScrollView
  19. 张一鸣宣布卸任字节跳动CEO
  20. 软考中级-软件设计师-视频学习时长记录

热门文章

  1. 个人网站怎么申请支付接口?
  2. oracle的异步备份,网络存储导论第七章:异步数据复制容灾方式
  3. 外贸常用术语_常用外贸术语
  4. 【图灵奖得主】Alfred V. Aho 哥伦比亚大学
  5. 一阶微分方程组c语言编程,一阶常微分方程数值解的C语言编程实现.doc
  6. QT/信号和槽(酷勤网)
  7. stm32(十八)TFT-LCD
  8. 美团校园招聘笔试例题一---C语言
  9. html邮件 自定义变量,CSS3中的自定义变量样式用法
  10. 怎么在html中复制粘贴图片,如何复制其他网页上的文章和图片