之前写过一个链家网北京二手房的数据抓取,然后本来今天想着要把所有的东西弄完,但是临时有事出去了一趟,耽搁了一下,然后现在是想着把北京的二手房的信息都进行抓取,并且存储在mongodb中,

首先是通过'https://bj.lianjia.com'的url将按照区域划分和地铁路线图进行划分的所有的url抓取出来进行存储,然后在进行下一步的分析,然后会每一套房源信息都会有一个data-housecode,标识是那一套房间,为了避免有重复的房源信息,在每套房的数据中将data-housecode,数据作为每一套房的标识,进行存储,然后在抓取到房源信息存储到mongodb中时,通过data-housecode进行判断,看当前房源是否已经存储完全,如果已经存储了,则不必插入,否则将该房源信息插入到mongodb中。

用的还是scrapy框架,然后只是在spider.py中添加了按照区和地铁路线图的所有的房源信息,当然根据区域和地铁还可以分的更细。。。

大致的爬虫的框架是:

在scrapy框架中,使用过程是,在spider.py中,将要获取的url请求给scheduler,然后通过download模块进行Request下载数据,如果下载失败,会将结果告诉scrapy engine,然后scrapy engine会稍后进行重新请求,然后download将下载的数据给spider,spider进行数据处理,抓取需要保存的按照地铁路线或者是区域的url,然后跟进url,将个个不同的url进行告诉scrapy engine,然后又通过相同的远离然后进行抓取,然后存储每个房源的标识和条件情况,然后将处理结果返回给item,通过item进行mongodb的存储。

scrapy.py中的代码如下:

#-*-coding:utf-8-*-

importscrapyimportrefrom bs4 importBeautifulSoupimporttimeimportjsonfrom scrapy.http importRequestfrom House.items importHouseItemimportlxml.htmlfrom lxml importetreeclassspider(scrapy.Spider):

name= 'House'url= 'https://bj.lianjia.com'base_url= 'https://bj.lianjia.com/ershoufang'

defstart_requests(self):print(self.base_url)yield Request(self.base_url,self.get_area_url,dont_filter=True)defget_area_url(self,response):

selector=etree.HTML(response.text)

results= selector.xpath('//dd/div/div/a/@href')for each inresults:if 'lianjia' not ineach:

url= self.url +eachelse:

url=eachprint(url)yield Request(url, self.get_total_page, dont_filter=True)defget_total_page(self,response):

soup= BeautifulSoup(response.text, 'lxml')

Total_page= soup.find_all('div', class_='page-box house-lst-page-box')

res= r'

item['decorate'],item['elevate'],item['interest'],

item['watch'],item['publish'],item['build'],item['local'],item['advantage'],item['price'],item['unit']))

num+= 1

yield item

python找房源_python抓取链家房源信息(三)相关推荐

  1. python找房源_python抓取链家房源信息(二)

    试着用scrapy将之前写的抓取链家网信息的重新写了写 然后先是用了第一页的网页作为测试,调试代码,然后发现总是抓取的时候遇见了 类似于这样的问题,并且抓取不到信息 2017-03-28 17:52: ...

  2. python下载电影_Python抓取电影天堂电影信息的代码

    Python2.7Mac OS 抓取的是电影天堂里面最新电影的页面.链接地址: http://www.dytt8.net/html/gndy/dyzz/index.html 获取页面的中电影详情页链接 ...

  3. python链家二手房_python 爬取链家二手房信息

    '''Created on 2017-10-9 @author: wbhuangzhiqiang''' importsysimportreimportcsvimporturllib.requestfr ...

  4. Python爬虫三:抓取链家已成交二手房信息(58W数据)

    环境:Windows7+python3.6+Pycharm2017 目标:抓取链家北京地区已成交二手房信息(无需登录),如下图,户型.朝向.成交时间价格等,保存到csv.最后一共抓取约58W数据,程序 ...

  5. python爬虫之scrapy初试与抓取链家成交房产记录

    接上一篇文章,本机安装好python之后和scrapy之后,我们开始学习使用scrapy创建爬虫程序. 今天先来点简单的,不那么复杂,先看看抓取链家网里面的房价信息. 首先使用CMD命令行进入F盘创建 ...

  6. python爬虫requests源码链家_python爬虫——爬取链家房价信息(未完待续)

    爬取链家房价信息(未完待续) items.py # -*- coding: utf-8 -*- # Define here the models for your scraped items # # ...

  7. python关于二手房的课程论文_基于python爬取链家二手房信息代码示例

    基本环境配置 python 3.6 pycharm requests parsel time 相关模块pip安装即可 确定目标网页数据 哦豁,这个价格..................看到都觉得脑阔 ...

  8. 链家网开源java_异步协程爬取链家租房信息

    异步协程抓取链家数据+pandas写入csv import asyncio import aiohttp import pandas from bs4 import BeautifulSoup fro ...

  9. python爬虫requests源码链家_python爬虫爬取链家二手房信息

    #coding=utf-8 import requests from fake_useragent import UserAgent from bs4 import BeautifulSoup imp ...

  10. python爬虫——使用bs4爬取链家网的房源信息

    1. 先看效果 2. 进入链家网,这里我选择的是海口市点击跳转到链家网 3. 先看网页的结构,这些房子的信息都在li标签,而li标签再ul标签,所以怎么做大家都懂 4. 代码如下,url的链接大家可以 ...

最新文章

  1. vue连线 插件_【Vue CLI】手把手教你撸插件
  2. Linux纯脚本故障转移集群
  3. 守护进程(setsid、getpgrp、setpgid、getpgid)以及系统日志(openlog、syslog、closelog)...
  4. 动窗口的制作暨CSizingControlBar类的使用说明
  5. n个一位数字的数组中选取任意数目的数字,构成的3的最大倍数是多少?
  6. My97DatePicker在asp.net项目中的使用
  7. 写一个易于维护使用方便性能可靠的Hybrid框架(一)—— 思路构建
  8. ambari搭建注意事项
  9. nginx反向代理初探
  10. 稀缺时尚男模促销海报|PSD分层,简单搞定设计稿
  11. opencv 打开视频或摄像头并按格式保存图片,读取图片
  12. 自编Python机器人,内置词库可改写。
  13. sqlserver企业版秘钥_SqlServer2008到期升级企业版 密钥+图解
  14. tableau中文版教程pdf_快速入门Tableau详细教程(
  15. python爬取微信运动_微信运动数据抓取(Python)
  16. Codefroces 760 B. Frodo and pillows
  17. jcp jsr_JCP选举结果:LJC和CloudBees赢得EC席位
  18. 扫描二维码报修公司电脑
  19. matlab绘制加速度曲线,加速度积分得到速度和位移的问题小结
  20. 清明时节雨纷纷,祭祖的日子又悄然无息地到来了

热门文章

  1. HTML实例—以一个简单网页为例
  2. android inflate 耗时,Android Fragment的生命周期和Inflate优化
  3. java繁体_Java-汉字繁体拼音转换
  4. 2018计算机cpu调研,2018最新电脑处理器天梯图,进来了解下
  5. recyclerview 动态设置高度_RecyclerView 动态调整高度, 调整item高度
  6. Appro DM36x IPNC 4.0 开发环境配置
  7. python中输入字符串中只有字母_python中,只有一个字母的字符串属于类型
  8. bifrostv配置文件_数据同步配置 - 全量任务配置 - 《Bifrost v1.1.0 中文文档》 - 书栈网 · BookStack...
  9. Cisco服务器硬盘状态jbod,如何为服务器硬盘配置RAID或JBOD模式
  10. Jill Rides Again UVA - 507(求最大子序列和)