import json

import  requests
from lxml import etree
from time import sleep url = "https://sz.lianjia.com/ershoufang/rs/"
headers = {
"User-Agent":"",
"Refer":"https://sz.lianjia.com/ershoufang/pg2/"
}
resp = requests.get(url,headers=headers) base_url = "https://sz.lianjia.com/ershoufang/pg{}/"
html = etree.HTML(resp.text)
data = html.xpath('//*[@id="content"]//div[@class="page-box fr"]/div/@page-data')
data = json.loads(data[0])
totalPage = data['totalPage']
curPage = data['curPage'] def get_data(url):
list = []
resp = requests.get(url, headers=headers)
html = etree.HTML(resp.text)
ul = html.xpath('.//ul[@class="sellListContent"]/li')
for li in ul:
face = li.xpath('./a/img/@src')
title = li.xpath('.//div[@class="title"]/a/text()')
position = li.xpath('.//div[@class="positionInfo"]/a/text()')
house_info = li.xpath('.//div[@class="houseInfo"]/text()')
follow_info = li.xpath('.//div[@class="followInfo"]/text()')
price = li.xpath('.//div[@class="priceInfo"]/div[@class="totalPrice"]/span/text()')
unit_price = li.xpath('.//div[@class="priceInfo"]/div[@class="unitPrice"]/span/text()')
tag = li.xpath('.//div[@class="tag"]//span/text()')
content = {}
content["face"] = face[0]
content["title"] = title[0]
content["position"] = position[0]
content["house_info"] = house_info[0]
content["follow_info"] = follow_info[0]
content["price"] = price[0]
content["unit_price"] = unit_price[0]
if len(tag) >=1 and tag[0] is not None:
content['tag'] = tag[0]
list.append(content)
return list totalList = []
for i in range(1,totalPage+1):
url = base_url.format(i)
print("crawl url " + url)
cur_list = get_data(url)
print(cur_list)
totalList = totalList + cur_list url = base_url.format(1) print(totalList)

python 爬取链家的更多相关文章

  1. Python爬取链家二手房源信息

    爬取链家网站二手房房源信息,第一次做,仅供参考,要用scrapy.   import scrapy,pypinyin,requests import bs4 from ..items import L ...

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

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

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

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

  4. Python爬虫项目--爬取链家热门城市新房

    本次实战是利用爬虫爬取链家的新房(声明: 内容仅用于学习交流, 请勿用作商业用途) 环境 win8, python 3.7, pycharm 正文 1. 目标网站分析 通过分析, 找出相关url, 确 ...

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

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

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

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

  7. python爬虫:利用BeautifulSoup爬取链家深圳二手房首页的详细信息

    1.问题描述: 爬取链家深圳二手房的详细信息,并将爬取的数据存储到Excel表 2.思路分析: 发送请求--获取数据--解析数据--存储数据 1.目标网址:https://sz.lianjia.com ...

  8. Python——Scrapy爬取链家网站所有房源信息

    用scrapy爬取链家全国以上房源分类的信息: 路径: items.py # -*- coding: utf-8 -*- # Define here the models for your scrap ...

  9. Scrapy实战篇(一)之爬取链家网成交房源数据(上)

    今天,我们就以链家网南京地区为例,来学习爬取链家网的成交房源数据. 这里推荐使用火狐浏览器,并且安装firebug和firepath两款插件,你会发现,这两款插件会给我们后续的数据提取带来很大的方便. ...

随机推荐

  1. 微信小程序-组件-基础内容

    1.text 1.作用:类似html的行内元素 2.常用属性: -space值:ensp:中文字符空格一半大小 emsp:中文字符空格大小 nbsp:根据设置字体的大小决定空格大小 -decode:d ...

  2. python 3 break 循环控制

    人类的本质是一个复读机

  3. 理解C#中的ExecutionContext vs SynchronizationContext

    原文:https://devblogs.microsoft.com/pfxteam/executioncontext-vs-synchronizationcontext/ 作者:Stephen 翻译: ...

  4. linux 信号机制

    文章目录 1. 实时信号非实时信号 2. 信号状态: 3. 信号生命周期: 4. 信号的执行和注销 信号掩码和信号处理函数的继承 信号处理函数的继承 信号掩码的继承 sigwait 与多线程 sigw ...

  5. js中的选择排序和冒泡排序

    var arr = [12,25,8,16,14]; console.log("排序前数组,",arr) //选择排序:第一轮,找出数组中最小的数,将第一项和最小的数互换位置.第二 ...

  6. tomact在windows系统下安装

    一.下载 下载地址: https://tomcat.apache.org/download-90.cgi 7,8,9的版本都可以下,这里下载最新版本 注意:Binary是编译好的,可以直接使用的版本, ...

  7. Salesforce Javascript(一) Promise 浅谈

    本篇参看: https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Promise https ...

  8. 记一次Java获取本地摄像头(基于OpenCV)

    OpenCV官网下载地址(下载安装后,在安装目录可以找到动态链接库和OpenCv.jar) https://opencv.org/releases/ 安装完成后,这是我的安装目录 maven 依赖(这 ...

  9. echarts中折线图切换为数据视图(表格布局)表头无法对齐解决方法

                dataView: {               show: true,               readOnly: true,               option ...

  10. 使用 IIS 新建WebService站点供Android访问远程sqlserver数据库

    新增网站 打开IIS控制台,找到服务根目录,右键,新建网站 网站设定 浏览测试 使用刚才生成的默认HelloWorld的服务1页面,记得加上端口号 http://localhost:8090/serv ...