# -*- coding: utf-8 -*-
# @Time : 2019/4/28 10:44
# @Author : wujf
# @Email : 1028540310@qq.com
# @File : 采集房屋信息.py
# @Software: PyCharm '''
https://sz.centanet.com/xiaoqu/g1/
https://sz.centanet.com/xiaoqu/g220/
''' import requests
from lxml import etree
import pandas as pd listhouse = ["https://sz.centanet.com/xiaoqu/g{}".format(str(i)) for i in range(1,221)] t = []
d = []
p = []
for url in listhouse:
url_single = url+'/'
header = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36'} # 增加代理
r = requests.get(url_single, timeout=30, headers=header)
ret = r.content.decode() result = etree.HTML(ret)
title = result.xpath('//div[@class="house-item clearfix"]/div[@class="item-info fl"]/h4[@class="house-title"]/a/text()') t.append(title)
#print(title) address = result.xpath('//div[@class="house-item clearfix"]/div[@class="item-info fl"]/p[@class="mid f14 f000"]/text()')
'''处理列表换行符 \r\n 和多余字符及空格'''
list2 = [x.strip() for x in address]
set1 = list(set(list2)) #去重
set1.sort(key=list2.index) #排序 按照之前列表形式
set1.remove('') #去空格
set1.remove('-') #去字符串'-'
d.append(set1)
print(set1) price = result.xpath('//div[@class="item-pricearea fr"]/p[@class="price-nub cRed tc"]/span/text()')
p.append(price)
#print(price)
#break title_sum = sum(t, [])
address_sum = sum(d,[])
price_sum = sum(p,[]) # 创建数据表
house = pd.DataFrame({'name': title_sum, 'address':address_sum, 'price': price_sum})
# 查看数据表的内容
house.head()
house.to_csv('房源信息表详细版.csv',encoding='gbk')
# house.to_sql()

  

xpath 获取深圳房源信息并导出csv的更多相关文章

  1. 80 行代码爬取豆瓣 Top250 电影信息并导出到 CSV 及数据库

    一.下载页面并处理 二.提取数据 观察该网站 html 结构 可知该页面下所有电影包含在 ol 标签下.每个 li 标签包含单个电影的内容. 使用 XPath 语句获取该 ol 标签 在 ol 标签中 ...

  2. xpath获取块元素下<br>下的信息

    再爬虫取字段的时候遇到一种类似下面的结构: <p> <br> "通用名称:xxxxxx" </p> 用xpath取的方式://p//text() ...

  3. 【Java/JDBC】利用ResultSetMetaData从数据库的某表中获取字段信息并存到csv文件

    代码下载:https://files.cnblogs.com/files/xiandedanteng/FindNotnullColumns20191102-2.rar 这篇还不够完善,请看更完善的续篇 ...

  4. 使用PHP导入和导出CSV文件

    我们先准备mysql数据表,假设项目中有一张记录学生信息的表student,并有id,name,sex,age分别记录学生的姓名.性别.年龄等信息. CREATE TABLE `student` ( ...

  5. Magcodes.WeiChat——通过CsvFileResult以及DataAnnotations实现导出CSV文件

    我们先来看看效果图: 从上图中可以看出,导出的文件中列名与表格名称保持一致,并且忽略了某些字段. 相关代码实现 我们来看相关代码: 页面代码: @using (Html.BeginForm(" ...

  6. 用NPOI实现导入导出csv、xls、xlsx数据功能

    用NPOI实现导入导出csv.xls.xlsx数据功能   直接上代码 首先定义一个接口   如果需要直接操作文件的话,就自己在封装一次 然后定义csv类的具体实现 这个需要引入命名空间LumenWo ...

  7. 关于导出csv格式文件的身份证号、日期的处理

    EXCEL系统的单元格,默认格式是常规或数值格式下,数字超过10位即以科学计数法显示,对15位以后的数字用0填充. 在导入到Excel.导出csv文件时,对于身份证号自动变成科学计数法的地方,就要做一 ...

  8. Python爬虫项目--爬取自如网房源信息

    本次爬取自如网房源信息所用到的知识点: 1. requests get请求 2. lxml解析html 3. Xpath 4. MongoDB存储 正文 1.分析目标站点 1. url: http:/ ...

  9. 【转】使用PHP导入和导出CSV文件

    项目开发中,很多时候要将外部CSV文件导入到数据库中或者将数据导出为CSV文件,那么具体该如何实现呢?本文将使用PHP并结合mysql,实现了CSV格式数据的导入和导出功能.我们先准备mysql数据表 ...

随机推荐

  1. Spring MVC SessionAttributes ModelAttribute注解

    说明 本文主要针对 @SessionAttributes注解 和 @ModelAttribute注解的基础用法进行解析.至于为什么会将这两个注解放在一起,是因为它们之间还是有点影响的. @Sessio ...

  2. cogs 7. 通信线路

    7. 通信线路 ★★   输入文件:mcst.in   输出文件:mcst.out   简单对比时间限制:1.5 s   内存限制:128 MB 问题描述 假设要在n个城市之间建立通信联络网,则连通n ...

  3. @Repository @Service 和@Autowired 的使用

    解释: @Controller 声明Action组件 @Service   声明Service组件    @Service("myMovieLister")  @Repositor ...

  4. FZU 1894 志愿者选拔【单调队列】【monotone decreasing queue】

     Problem 1894 志愿者选拔 Accept: 1770    Submit: 5523 Time Limit: 1500 mSec    Memory Limit : 32768 KB  P ...

  5. 解决国内android sdk无法更新,google不能的简单办法

    在国内屏蔽了很多外国站点.连google 和android都屏蔽了,做程序猿的就苦了! 只是车到山前必有路,我们也有我们的办法! 推荐一个比以下的更好的方法:红杏公益代理:http://blog.cs ...

  6. Codeforces Round #332 (Div. 2)A. Patrick and Shopping 水

    A. Patrick and Shopping   Today Patrick waits for a visit from his friend Spongebob. To prepare for ...

  7. Android updater-scripts(Edify Script)各函数详细说明【转】

    本文转载自:http://blog.csdn.net/kwuwei/article/details/40616909 这是Android系统来运行updater-scripts的Edify语言的基本介 ...

  8. android NDK 神经网络API——是给tensorflow lite调用的底层API,应用开发者使用tensorflow lite即可

    eural Networks API In this document show more Understanding the Neural Networks API Runtime Neural N ...

  9. POJ 2728(最优比率生成树+01规划)

                                                                                                    Dese ...

  10. hdu 1075(字典树)

    What Are You Talking About Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 102400/204800 K ...