当前位置: 首页 > news >正文

东莞seo建站优化收费网站建设和维护的职责

东莞seo建站优化收费,网站建设和维护的职责,wordpress底部浮动窗口,做像百姓网这样网站多少钱前言本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理以下文章来源于啤酒就辣条 #xff0c;作者啤酒就辣条一、网页分析爬取贝壳网石家庄二手房信息#xff0c;先打开链接https://sjz.ke.com/ershoufang…前言本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理以下文章来源于啤酒就辣条 作者啤酒就辣条一、网页分析爬取贝壳网石家庄二手房信息先打开链接https://sjz.ke.com/ershoufang/。不添加筛选条件发现总共有42817套房子。我们点击第二页再查看链接变成了https://sjz.ke.com/ershoufang/pg2/。所以可发现/pg{i}i就是页码。所以最多可爬取3000套房产信息距离上面给出的4万多差的还很远于是尝试把pg{i}的那个i人为改变一下点击回车请求一下。返回房产信息数据都一样。都是第100页的信息于是乎得出结论。通过贝壳网web端查看某一条件下的房产信息最多可以查看3000套。所以呢我们增加一些条件比如满五唯一2室的。请求之~发现链接变成了https://sjz.ke.com/ershoufang/pg2mw1l2/。mw1l2这个玩意应该筛选条件。看到只有2399套欧克咱们就爬它了。二、撸起袖子写代码麻雀虽小五脏俱全本爬虫设计三个部分爬取解析储存。爬取爬取利用requests库比python内置库urllib要好用很多。importrequestsdefget_a_page(url):resultrequests.get(url)print(result.text)if __name__ __main__:for i in range(1, 101):get_a_page(fhttps://sjz.ke.com/ershoufang/pg{i}mw1l2/)for循环打印返回数据发现没问题。其实i循环到81就好了毕竟咱们知道了只有不到2400套嘛。解析解析使用pyquery 这个库使用起来类似于Jquery。完整APIhttps://pythonhosted.org/pyquery/api.html。还有一个解析库bs4下次再尝试。在这里插入图片描述发现读取如图所示ul里面一个div就可以拿到我们想要的数据。importrequestsfrom pyquery importPyQuery as pqimportjsondefget_a_page(url):resultrequests.get(url)docpq(result.text)ul doc(.sellListContent)divs ul.children(.clear .info.clear).items()for div indivs:count 1title div.children(.title a).text()place div.children(.address .flood .positionInfo a).text()msg div.children(.address .houseInfo).text()price div.children(.address .priceInfo .totalPrice span).text()per_meter div.children(.address .priceInfo .unitPrice).attr(data-price)dict{title: title,place: place,msg: msg,price: price,per_meter: per_meter}print(str(count) : json.dumps(dict, ensure_asciiFalse))代码如上pyquery 的children方法是查找子标签find方法是找子孙标签此处我们只需要找下一代就好。然后通过text找到标签所包含的文本。attr是获取属性内容的因为那个per_meter从属性中获取比较简单标签中的内容还包含了“元/平米”。储存本次我们直接储存到csv中一种类似于excel的文件格式。利用的是pandas库。完整代码如下importrequestsfrom pyquery importPyQuery as pqimportjsonimportpandas as pdcolumns [title, msg, price, per_meter]#爬取某网页defget_a_page(url):resultrequests.get(url)docpq(result.text)ul doc(.sellListContent)divs ul.children(.clear .info.clear).items()count0titles[]places[]msgs[]prices[]per_meters[]for div indivs:count 1title div.children(.title a).text()place div.children(.address .flood .positionInfo a).text()msg div.children(.address .houseInfo).text()price div.children(.address .priceInfo .totalPrice span).text()per_meter div.children(.address .priceInfo .unitPrice).attr(data-price)dict{title: title,place: place,msg: msg,price: price,per_meter: per_meter}titles.append(title)places.append(place)msgs.append(msg)prices.append(price)per_meters.append(per_meter)print(str(count) : json.dumps(dict, ensure_asciiFalse))datas{title: titles,place: places,msg: msgs,price: prices,per_meter: per_meters}df pd.DataFrame(datadatas, columnscolumns)df.to_csv(sjz.csv, modea, indexFalse, headerFalse)if __name__ __main__:for i in range(1, 101):get_a_page(fhttps://sjz.ke.com/ershoufang/pg{i}mw1l2/)多进程由于get_a_page函数要运行100次有点小慢所以利用多进程加快速度这部分代码请直接copy。将主函数改成如下所示from multiprocessing.pool importPoolif __name__ __main__:pool Pool(5)group ([fhttps://sjz.ke.com/ershoufang/pg{x}mw1l2/for x in range(1, 101)])pool.map(get_a_page,group)pool.close()pool.join()三、结束查看下效果效果还可以。有人会说为什么不把msg信息拆分一下分别储存楼层、几室几厅、建筑年代等等多好。刚开始我是那么做的结果发现这个msg数据那几项不是必填项有的建筑年代、楼层什么的房主不填写索性就整个拿过来了。
http://wiki.neutronadmin.com/news/87597/

相关文章:

  • 怎么制作微信购物网站山东大学信息服务平台
  • 婚庆网站建设策划案深圳房地产网站建设
  • 商城网站有什么好处黑色网站模板
  • 建设银行网站app一个大佬做的本子网站
  • 网站开发公司怎么选择网站开发者模式下载视频
  • 网站外包多少钱兰州市做网站的企业有哪些
  • 山东城市建设厅网站wordpress pdf 打印
  • 南京h5网站开发莱芜金点子电子版
  • 室内设计素材网站大全境外网站可以备案吗
  • 株洲建设企业网站oa系统网站建设
  • 深圳网站建设网站推广方案设计欣赏网
  • 做网站如何链接邮箱谷歌浏览器对做网站有什么好处
  • 用软件做模板下载网站中油即时通信电脑版
  • 可以刮刮卡的网站无锡网站营销公司
  • 全站仪建站流程什么是域名为什么需要它
  • 建设网站优点免费建立平台网站
  • 软路由系统如何做网站wordpress执行生命周期
  • 自己可以建设网站吗文化建设宣传标语
  • 帆客建设网站宝塔面板加wordpress建站
  • 用文本文档做网页wordpress 内存优化
  • flash网站模板下载做投票链接网站
  • 厦门网站建设建网站网站首页包含的内容怎么做
  • 自己建网站网站优化外包价格
  • 织梦网站统计代码wordpress的版本号
  • 智慧团建入口龙岗网站优化培训
  • 手机版网站建设价格中国土木工程网
  • 企业融资论文广州seo网站营销
  • 企业做网站有什么好处衡阳网站开发培训
  • 个人网站备案查询2021外贸网站有哪些
  • 网站制作时间孟村网 网站