爬取链家网站二手房房源信息,第一次做,仅供参考,要用scrapy。
 
import scrapy,pypinyin,requests
import bs4
from ..items import LianjiaItem
class LianjiaSpider(scrapy.Spider):
    name = 'lianjia_dl'
    allowed_domains = ['www.lianjia.com']
    start_urls = []
    url_0 = 'https://www.lianjia.com/city/'
    res = requests.get(url_0)
    bs_cs = bs4.BeautifulSoup(res.text,'html.parser')
    xinxi_cs = bs_cs.find_all('div',class_='city_province')
    for data_cs in xinxi_cs:
        cs_s = data_cs.find('ul').find_all('li')
        for cs_1 in cs_s:
            yess = cs_1.find('a')['href']
            if yess.find('fang')>=0:       #若fang字符串在yess中,则yess.find('fang')是大于等于0的,显示在字符串中的位置
                continue
            else:
                for x in range(100):
                real_url = cs_1.find('a')['href']+'ershoufang/pg'+str(x+1)+'/' 
                start_urls.append(real_url)
 
    def parse(self,response):
        bs = bs4.BeautifulSoup(response.text,'html.parser')
        datas = bs.find_all('div',class_='info clear')
        for data in datas:
               item = LianjiaItem()
item['xiaoqu'] = data.find('div',class_='address').find('a').text
da_list = data.find('div',class_='address').find('div',class_='houseInfo').text
da_li =da_list.split('|')
item['huxing'] = da_li[1].replace(' ','') # .replace(' ','') 去掉全部空格
item['mianji'] = da_li[2].replace(' ','')
item['chaoxiang'] = da_li[3].replace(' ','')
item['zhuangxiu'] = da_li[4].replace(' ','')
item['quyu'] = data.find('div',class_='flood').find('div',class_='positionInfo').text.split('-')[1].replace(' ','')
item['louceng'] = data.find('div',class_='flood').find('div',class_='positionInfo').text.split('-')[0].replace(' ','')
item['danjia'] = data.find('div',class_='priceInfo').find('div',class_='unitPrice').find('span').text.split('单价')[1].replace(' ','')
item['fangjia'] = data.find('div',class_='priceInfo').find('div',class_='totalPrice').text
yield item

Python爬取链家二手房源信息的更多相关文章

  1. python爬取链家二手房信息,确认过眼神我是买不起的人

    前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理. PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取 python免费学习资 ...

  2. 【nodejs 爬虫】使用 puppeteer 爬取链家房价信息

    使用 puppeteer 爬取链家房价信息 目录 使用 puppeteer 爬取链家房价信息 页面结构 爬虫库 pupeteer 库 实现 打开待爬页面 遍历区级页面 方法一 方法二 遍历街道页面 遍 ...

  3. python抓取链家房源信息(二)

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

  4. python抓取链家房源信息(三)

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

  5. python抓取链家房源信息

    闲着没事就抓取了下链家网的房源信息,抓取的是北京二手房的信息情况,然后通过网址进行分析,有100页,并且每页的url都是类似的 url = 'https://bj.lianjia.com/ershou ...

  6. 适合初学者的Python爬取链家网教程

    前言 文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者: TinaLY PS:如有需要Python学习资料的小伙伴可以加点击下 ...

  7. python 爬取链家

    import json import requests from lxml import etree from time import sleep url = "https://sz.lia ...

  8. Python的scrapy之爬取链家网房价信息并保存到本地

    因为有在北京租房的打算,于是上网浏览了一下链家网站的房价,想将他们爬取下来,并保存到本地. 先看链家网的源码..房价信息 都保存在 ul 下的li 里面 ​ 爬虫结构: ​ 其中封装了一个数据库处理模 ...

  9. python爬虫:爬取链家深圳全部二手房的详细信息

    1.问题描述: 爬取链家深圳全部二手房的详细信息,并将爬取的数据存储到CSV文件中 2.思路分析: (1)目标网址:https://sz.lianjia.com/ershoufang/ (2)代码结构 ...

随机推荐

  1. [NOIP 2018]旅行

    题目链接 题意简介:现有一个图,小Y要把它走完,每个点只去一次,路径字典序最小. 分析:这道题我认为很重要的一个点就是它的数据范围.它只有两种 m=n-1 或 m=n.我们先考虑第一种:m=n-1也就 ...

  2. php常量和变量之变量引用

    变量引用 变量引用很多老师喜欢来用C语言的指针来去讲解.我们作为有这么多年开发和教学经验的人来说——大多数学习PHP的人来说根本不了解C语言. 使用C语言一指针来讲解变量引用,我们觉得画蛇填足.并且, ...

  3. 理解 __declspec

    “__declspec”是Microsoft c++中专用的关键字,它配合着一些属性可以对标准C++进行扩充.这些属性有:align.allocate.deprecated. dllexport.dl ...

  4. jQuery相关方法1

    一.设置某个元素的标签内容------.html()方法 <script src="http://libs.baidu.com/jquery/1.10.2/jquery.min.js& ...

  5. surprise库官方文档分析(三):搭建自己的预测算法

    1.基础 创建自己的预测算法非常简单:算法只不过是一个派生自AlgoBase具有estimate 方法的类.这是该方法调用的predict()方法.它接受内部用户ID,内部项ID,并返回估计评级r f ...

  6. RBF、GRNN 和 PNN 神经网络在Matlab中的用法

    一.RBF神经网络 RBF神经网络概述 径向基函数神经网络 与 BP 神经网络的区别在于训练过程--其参数初始化具有一定方法,并非随机,隐含层的末尾使用了径向基函数,它的输出经过加权和得到 LW2.1 ...

  7. 如何用Xshell导出文件到桌面本地

    在软件开发中,会经常用到登录到Linux服务器,查看相关日志,同时也会远程取出文件到本地环境, 在没有xftp客户端的情况下,如何直接使用xshell软件直接下载文件到本地呢 下载文件: 使用sz命令 ...

  8. html页面引入vue组件

    html页面引入vue组件需要在页面引入http-vue-loader.js 注意:要查看页面引入vue组件的效果不能直接在本地打开index.html,会有跨域问题,可以在本地配置一个nginx转发 ...

  9. tomcat设置gzip

    使用tomcat发布3dtiles或terrain数据遇到的gzip问题 问题一 对大于1KB的json请求进行gzip压缩,json为原文件 1.创建原始文件 2.设置 在apache-tomcat ...

  10. xiugai grub

    https://wiki.gentoo.org/wiki/Flicker_Free_Boot#Getting_the_custom_version_of_grub