Python 爬取赶集网租房信息
代码已久,有可能需要调整
#coding:utf-8
from bs4 import BeautifulSoup #有这个bs4不用正则也可以定位要爬取的内容了
from urlparse import urljoin
import requests
import csv
import html5lib URL = 'http://hn.ganji.com/fang1/' #爬取的目标地址
ADDR = 'http://hn.ganji.com/' if __name__ == '__name__'
start_page = 1 #开始爬取的页面
end_page = 10 #结束爬取的页面
price = 7 #爬取的价格 #f = open('ganji.csv','wb')这样打开一个文件最后需要关闭
with open('ganji.csv','wb') as f: #创建一个csv文件,with ... as f表示打开文件最后用完自动关闭,一般和打开文件一起用
#delimiter=','表示以逗号为分隔符,如:'天通苑一区','天通苑','1500'
csv_writer = csv.writer(f,delimiter = ',')
print('start..........') while start_page <= end_page:
start_page += 1
print('get:{0}'.format(URL.format(page = start_page,price = price)))#开始爬取
response = requests.get(URL.format(page = start_page,price = price))#获取页面
html = BeautifulSoup(response.text,'html.parser')
#第一个参数是要抓取的html文本,第二个是使用哪种解析器(python默认的解析器)
house_list = html.select('.f-list > .f-list-item > .f-list-item-wrap') #括号里面的表示html标签的层次,具体可查看赶集网
#获取房源信息,也可以用正则区匹配
if not house_list:
break for house in house_list:
house_title = house.select('.title > a')[0].string.encode('utf-8') #[0]取列表的第一个标签
house_addr = house.select('.address > .area > a')[-1].string.encode('utf-8') #[-1]取列表的第一个标签
house_price = house.select('.info > .price > .num')[0].string.encode('utf-8')
house_url = urljoin(ADDR,house.select('.title > a')[0]['href'])
csv_writer.writerow([house_title,house_addr,house_price,house_url])
print('end.........')
Python 爬取赶集网租房信息的更多相关文章
- 利用python爬取贝壳网租房信息
最近准备换房子,在网站上寻找各种房源信息,看得眼花缭乱,于是想着能否将基本信息汇总起来便于查找,便用python将基本信息爬下来放到excel,这样一来就容易搜索了. 1. 利用lxml中的xpath ...
- python爬取当当网的书籍信息并保存到csv文件
python爬取当当网的书籍信息并保存到csv文件 依赖的库: requests #用来获取页面内容 BeautifulSoup #opython3不能安装BeautifulSoup,但可以安装Bea ...
- Python爬虫项目--爬取自如网房源信息
本次爬取自如网房源信息所用到的知识点: 1. requests get请求 2. lxml解析html 3. Xpath 4. MongoDB存储 正文 1.分析目标站点 1. url: http:/ ...
- Node.js爬虫-爬取慕课网课程信息
第一次学习Node.js爬虫,所以这时一个简单的爬虫,Node.js的好处就是可以并发的执行 这个爬虫主要就是获取慕课网的课程信息,并把获得的信息存储到一个文件中,其中要用到cheerio库,它可以让 ...
- 用Python爬取智联招聘信息做职业规划
上学期在实验室发表时写了一个爬取智联招牌信息的爬虫. 操作流程大致分为:信息爬取——数据结构化——存入数据库——所需技能等分词统计——数据可视化 1.数据爬取 job = "通信工程师&qu ...
- python爬取 “得到” App 电子书信息
前言 文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者: 静觅 崔庆才 PS:如有需要Python学习资料的小伙伴可以加点击下 ...
- Python爬取房天下二手房信息
一.相关知识 BeautifulSoup4使用 python将信息写入csv import csv with open("11.csv","w") as csv ...
- python爬取北京政府信件信息01
python爬取,找到目标地址,开始研究网页代码格式,于是就开始根据之前学的知识进行爬取,出师不利啊,一开始爬取就出现了个问题,这是之前是没有遇到过的,明明地址没问题,就是显示网页不存在,于是就在百度 ...
- 使用python爬取东方财富网机构调研数据
最近有一个需求,需要爬取东方财富网的机构调研数据.数据所在的网页地址为: 机构调研 网页如下所示: 可见数据共有8464页,此处不能直接使用scrapy爬虫进行爬取,因为点击下一页时,浏览器只是发起了 ...
随机推荐
- Fiddler,对数据进行抓包,拦截,修改等操作
转载....... 一.fiddler设置fiddler默认是只能抓取http网络格式的,所以我们要先设置下使fiddler可以获取到https网络格式 首先tools→options→https进去 ...
- Mate Translate的特色功能phrasebook 常用语手册介绍
Mate Translate是Mac os系统上一款多国语言即时翻译工具,支持103种语言之间的即时互译,还可以在你的所有设备之间轻松同步.Mate Translate 不但推出了适应各个平台使用的客 ...
- 关于C#中Convert.ToInt32()是干什么用的
并非每个对象都可以直接转换为int.例如,以下内容将无法编译: string Maomao = "100"; int i = (int)Maomao; 因为string无法隐式转换 ...
- Java实体与Json操作类
import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.Jav ...
- thinkphp rpc
RPC(Remote Procedure Call Protocol)——远程过程调用协议,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议.RPC协议假定某些传输协议的存在 ...
- 【dart学习】-- Dart之元数据
一,概述 元数据概述 元数据(Metadata),又称中介数据.中继数据,为描述数据的数据(data about data),主要是描述数据属性(property)的信息,用来支持如指示存储位置.历 ...
- JVM内存分为哪几部分?各个部分的作用是什么?
JVM内存区域分为五个部分,分别是堆,方法区,虚拟机栈,本地方法栈,程序计数器. 堆. 堆是Java对象的存储区域,任何用new字段分配的Java对象实例和数组,都被分配在堆上,Java堆可使用-Xm ...
- webstorm使用说明
1.移动光标到的代码块的结尾处(开始处 [ ) ctrl+] 2.移动光标到的代码块的结尾处并选择 ctrl+shift+] 3.ctrl + b: 跳到变量申明处 4.多光标输入: ...
- Python语法基础03(if语句,while循环与for循环)
if语句:语法:单分支if 判断条件:语句块 执行过程:首先执行判断条件,当条件成立则执行判断条件下面的语句块,若条件不成立,则不执行 双分支if 判断条件:语句块1else:语句块2执行过程: 首先 ...
- PAT_A1139#First Contact
Source: PAT A1139 First Contact (30 分) Description: Unlike in nowadays, the way that boys and girls ...