求大神帮我改一下怎么把日期改成横杠,04改成01

Python爬虫一步步抓取房产信息 | 岂安低调分享
干货观点案例资讯我们前言嗯,这一篇文章更多是想分享一下我的网页分析方法。玩爬虫也快有一年了,基本代码熟悉之后,我感觉写一个爬虫最有意思的莫过于研究其网页背后的加载过程了,也就是分析过程,对性能没有特殊要求的情况下,编程一般是小事。以深圳地区的X房网为例吧。XX房网的主页非常简洁,输入相应的地区就可以找到对应的二手房或者一手房。这一篇文章主要就给大家介绍我在做XX房网爬虫的分析过程。注意:本文采用 Chrome作为分析加载工作,如果使用其他浏览器,请参考具体的规则。首先想到的嗯,你首先要跳出编程,从使用者甚至是产品经理的角度去思考:在浏览这个页面的时候,如何就能看到全市的二手房的情况。通过主页的一个区一个区的输入,搜索,然后将页面的单元下载,嗯这是一个方法。如上图所示,只要更改keyword后面的参数,就可以获得不同区的二手房数据。编程的时候只需要手动写入一个含有各个区的list,然后通过循环去更改 keyword后面的参数,从而开始一个区域,再爬取其中的链接。这个方法确实是可行的,深圳一共也没有多少个区。这个方法我试过是可行的。我实际想说的上面的这个方法固然可行,但并不是我想推荐的方法,大家看回首页,搜索栏旁边有一个地图找房。点进去你就能看到深圳全区域的房子,要是能在这里弄个爬虫,不就简单多了。可以看到截图的右侧有所有二手房的链接,我们的任务就是下载右边的所有二手房的数据。首先第一步就先查看页面的源代码(Ctrl+U),可以从右边链表那里复制一些关键字,在源代码里面找找看,在源代码里面 Ctrl+F搜索观澜湖试试,结果是没有,再尝试几个关键词好像都没有,但通过检查元素(Ctrl+Shift+I),是可以定位到这些关键词的位置。这样可以初步判断右边的链表是通过 Js来加载,需要证实。尝试对观澜湖上方的元素在源代码里面定位,例如 no-data-wrap bounce-inup dn,就可以在源代码里面找到。仔细对比一下两边的上下文,可以看到在节点下面的内容有非常大的差异。通过这个 roomList作为关键词继续查找。在检查元素里面可以发现 roomList下面的加载的内容就是我们所需要的房屋列表,并且这部分内容再源代码里面没有。而在源代码页通过搜索 roomList,却发现出现在 script里面,证实 roomList里面的内容是通过 Js来加载的:下面就变成是找这个 roomList了,由于是通过 js加载的,打开控制台的 network,并重新刷新页面,查看页面里面各个元素的加载过程,在过滤器里面输入 roomList,可以找到一条信息:点开看 response里面下载的内容,发现那不就是我们要找的东西吗!里面有给出详细的页面数量(roomPageSize),那一个个的八位数字显然就是每一个房子的id嘛,然后每一页的加载数量是一定的,下面有对应 id里面有房子的经纬度、户型、面积以及朝向等等信息(在这里做一个提醒,需要做 heatmap的同学注意了,这里的经纬度用的是百度坐标,如果你后续可视化用的是 google地图、高德或者 GPS,是需要转换坐标的)。找到内容之后,接着就是看他的 Headers,看看是如何加载的。Request Url表明其访问的链接,Request Method表明他的请求方法是Post;Request的头定义(Headers)里面包括 Host、Origin、Referer、User-Agent等;请求的参数(parameters)里面有三个参数,这三个参数是直接放映在其Url链接上面,里面包括当前页的页码(currentPage)、页面大小(pageSize)以及s(这个s一开始也不同清楚是什么,但是发现每一次请求都有变化,后面才知道这个是时间戳,表示1970纪元后经过的浮点秒数);此外 Post函数还可以发送数据到服务器做请求,这里所发送的数据包括始末经纬度、gardenId(这个到后期发现是对应的小区编号)和 zoom(代表地图上面放大以及缩小的倍数,数字越大,放大倍数越高)基本扒到这里,对整个页面就比较清晰了,也知道我们的爬虫要怎么去写了。开始写代码了逻辑整理出来后,整个代码就写的非常轻松了。首先通过 post方式访问,通过正则表达式提取 Reponse里面的 roomPageSize,或者最大页数。然后对每一页的内容进行爬取,并将信息输出。第一部分,加载库,需要用到 requests, bs4, re, time(time是用来生成时间戳):1. from bs4 import BeautifulSoup2. importrequests, re, time第二部分,通过设定合理的 post数据以及 headers,通过 post下载数据。其中 payload里面包括地图所展示的经纬度信息(这个信息怎么获得,在X房网页面上通过鼠标拖拉,找到合适的位置之后,到控制台 Header内查看此时的经纬度就好了),headers则包含了访问的基本信息(加上有一定的反爬作用):页面下载后,对于第一次下载首先需要用正则表达式获得最大页面数,我们真正需要的内容结合 Beautiful的 get和 find以及 re来抓取就可以了:给一个在控制台里面输出的效果:最后,这篇文章给出了我在写 X房网爬虫的整个分析的思路。Garfield_Liang,Python中文社区专栏作者。你会感兴趣的内容:你用 Python 做过什么有趣的数据挖掘项目? - Python - 伯乐在线
& 你用 Python 做过什么有趣的数据挖掘项目?
有网友在知乎提问:「你用 Python 做过什么有趣的数据挖掘项目?」
我最近刚开始学习 Python, numpy, scipy 等, 想做一些数据方面的项目,但是之前又没有这方面的经验。所以想知道大家都做过什么有趣的项目, 或者有什么好入手的方向推荐下。
下面是何明科的分享:
第零步:原点,大数据与价值
大概一年多以前,和几个小伙伴均认同一个趋势:觉得通过技术手段获取网上越来越丰富的数据,并基于这些数据做分析及可视化,必能产生有价值的结果,帮助大家改善生活。(大数据被叫烂了,所以用低调的方式来解释我们的初心)
第一步:开工,为基金服务
恰巧和几个基金的朋友(包括对冲基金和 VC/PE 基金)聊到这个趋势,他们非常认同这个观点并愿意付费,认为可以用这种实时且定量的方式来跟踪一些上市公司或者私有公司旗下的产品,来确定谁是有价值的投资目标。于是立马获得订单并促使我们开干,因为考虑到 Python 灵活及各类爬虫库的优势,最终选用 Python 来做数据获取的主体架构;也有新潮的小伙伴使用 Go,同时用 Go 搭建了一个很酷的框架来制造分布式的智能爬虫,应对各种反爬策略。抓取数据主要来自于如下网站:
各应用商店:获取 App 的下载量及评论
大众点评及美团网:餐饮及各类线下门店消费及评价情况
汽车之家及易车:汽车的相关数据
58 及搜房;房屋租售数据
新浪微博:用户的各种发言及舆论
财经数据:雪球及各类财经网站
宏观数据网站:天气、12306 火车、机票网站
最初的产品纯粹是为基金服务。下图是在各个维度找出最有价值的 App,各种量级范围内在 30 天 /7 天增长最快及评价最好榜单。(顺便吹一下牛,我们这个榜单很早就发现小红书 App 的快速增长趋势以及在年轻人中的极佳口碑)
下图是对某个 App 的下载量跟踪,帮着基金做尽职调查。
下图是某上市公司的门店变化情况,帮着基金跟踪 TA 的增长情况。
下图是国内各个机场的实时流量,帮着基金跟踪国内出行的实时情况,或许能从一个侧面反映经济是否正在走入下行通道。
第二步:扩展思路,开源和分享
为基金服务,虽然给钱爽快,但是也让方向越走越窄。首先,基金希望信息是独享的和封闭的,投资就是投资人之间的零和博弈,公开的信息就迅速会一钱不值,基金最在乎的就是信息的独享及提前量,所以各个基金都希望我们呈现的数据及分析结果能够独家。这样迅速让我们的方向收窄以及工作的趣味性降低,其次,毕竟对于基金而言,能分析的投资对象及方向是非常有限的。而且现阶段,大部分对冲基金里面的分析员的数据分析能力其实很弱:这些分析员里面能用 VBA 或者能在 Excel 里面使用矩阵及向量乘法的人几乎可以惊为天人;能写 offset 函数的人,就应该直接提拔了;大部分人停留在一个个数网页找数据的阶段。所以和他们起来十分费劲,除了提供一些粗暴的数据,并不能产生太有价值的结果。
在这段迷茫期,本来充满激情的数据分析工作,让大家味如爵蜡,感觉自己变成了一个外包公司。不过互联网大法好,做技术做互联网的核心思路是分享和开源,我们很快回归到这一点。并且这一点最终让我们做出了改变。有些分析虽然基金不买单,但是对一般的老百姓、对一般的媒体是有价值的,于是我们试着把这些数据分析及结果写出来,发布到知乎上供大家参考。
知乎是个好平台,坚持创作好内容迟早就会被发掘出来。很快一篇用数据分析黄焖鸡米饭为什么火遍全国的回答()被知乎日报采用了。
这次被 “宠幸” 让团队兴奋不已,从而坚定了决心,彻底调整了整个思路,回到初心:不以解决基金关注的问题为核心,而以解决用户最关注的生活问题为核心。坚持以数据说话的套路,创作了许多点赞很多的文章并多次被知乎日报采用,并专注在如下的领域:
汽车。比如:,
餐饮。比如:
消费品。比如:口罩(),尿不湿()
招聘。比如:互联网人士年底怎么找工作()
房地产,这个虐心的行业。比如:深圳的房地产走势()
投融资。比如:用 Python 抓取投资条款的数据并做 NLP 以及数据分析:
还共享了一些和屌丝青年生活最相关的分析及数据。下图是深圳市早晨高峰时段某类人群出行的热点图,通过热点分析,试图找出这类人群的居住和上班的聚集区。
下图反映了在各时间段在深圳科技园附近下车的人群密度。
写这些报告,团队没有挣到一分钱,但是整个成就感和满意度大大上升。同时,在 Python 及各种技术上的积累也提高颇多,数据量级的积累也越发丰富,数据相关的各项技术也在不断加强。同时,顺势扩大了数据源:京东、淘宝等数据也纳入囊中。
第三步:扩展客户
在知乎上写这些报告,除了收获知名度,还收获意外之喜,一些知名品牌的消费品公司、汽车公司及互联网公司,主动找我们做一些数据抓取及分析。整个团队没有一个 BD,也从来不请客户吃饭。于是我们顺势做了如下的网站以及一个成熟的 Dashboard 框架(开发数据监控的 Dashboard 超有效率),目前主要监控和分析母婴、白酒、汽车及房地产四大行业,都是一些愿意花钱进行深度了解用户以及行业趋势的公司。收入自动上门,很开心!
下图是抓取汽车之家的数据,做出 BBA(奔驰宝马奥迪)这三大豪华品牌的交叉关注度,帮助品牌及 4A 公司了解他们用户的忠诚度以及品牌之间迁移的难度。
下图是抓取新浪微博的数据,分析广东白酒的消费场所
下图是抓取新浪微博的数据,分析广东白酒和各类食品的相关度。
除去为以上的品牌合作,我们数据风的文章也越来越受欢迎,曾经一周上了四次知乎日报。另外也有越来越多的知名媒体及出版社找到我们,虽然告知他们我们不写软文而只坚持按照数据结果来发表文章,他们依然表示欢迎。原来非五毛独立立场的数据风也能被媒体喜欢。自此,我们不断成为易车首页经常推荐的专栏。
第四步:尝试功能化平台化产品
降低与高大上基金的合作强度,转而与更接地气的各类品牌合作,让我们团队更贴近客户、更贴近真实需求。于是基于这些需求,我们开始尝试将之前在数据方面的积累给产品化,特别是能做出一些平台级的产品,于是我们开发出两款产品:第一款:选址应用选址是现在许多公司头疼的难题,以前完全是拍脑袋。因此我们开发出这样一套工具,帮助公司能够更理性更多维度得选址。下图,我们抓取多个数据源并完成拼接,根据用户的快递地址,勾画出某时尚品牌用户的住址,帮助其选址在北京开门店。
下图,我们抓取多个数据源并完成拼接,根据大型超市及便利店与某类型餐馆在广州地区的重合情况,帮助某饮料品牌选定最应该进入的零售店面。
第二款:数据可视化我们在工作中也深刻觉得以前制作图表和展示数据的方式太 low、太繁琐,我们希望去改变这个现状,于是开发了一套基于 Web 来制作图表的工具文图。远有 Excel/Powerpoint 对标,近有 Tableau 对标。下图是文图丰富的案例库及模板库。
下图是使用界面及图表类型。
下一步的工作:与微信的整合,一键生成适合于微信传播的截图以及公众号格式文章,便于在社交媒体的传播收集更多数据,目前已经覆盖 40 多家网站,涵盖衣食住行等多个方面将数据 SaaS 化和开源,便于各类公司及用户使用。(咨询投行等 Professional Service 人士一定会懂的,你们每年不知道要重复多少遍更新各类宏观微观的经济和行业数据,现在只需要调用 KPI)最后,希望有一天它能部分替代已经在江湖上混迹二三十年的 PowerPoint 及 Excel。
第五步:……
不可知的未来才是最有趣的。借用并篡改我们投资人的一句话:technology is fun, data is cool and science is sexy。初心未变,希望用数据用技术帮助更多的人生活得更美好。
从文中,大家可以看到一个创业小团队艰辛的摸索过程。从一开始的一个想法,希望通过技术和科学改变世界,到碰巧能赚钱,到因为赚钱快而迷失了方向,到最后回归初心,做自己最喜欢的事情。
可能感兴趣的话题
o 219 回复
关于 Python 频道
Python频道分享 Python 开发技术、相关的行业动态。
新浪微博:
推荐微信号
(加好友请注明来意)
– 好的话题、有启发的回复、值得信赖的圈子
– 分享和发现有价值的内容与观点
– 为IT单身男女服务的征婚传播平台
– 优秀的工具资源导航
– 翻译传播优秀的外文文章
– 国内外的精选文章
– UI,网页,交互和用户体验
– 专注iOS技术分享
– 专注Android技术分享
– JavaScript, HTML5, CSS
– 专注Java技术分享
– 专注Python技术分享
& 2017 伯乐在线

我要回帖

更多关于 怎么把日期改成横杠 的文章

 

随机推荐