通过输入国内,国外,城市名只能抓取13页的信息。。。木鸟短租可以尝试抓取,主要里面有文章

import requests,re,time
from lxml import etree#城市列表:
#https://www.cnblogs.com/114811yayi/p/7061674.html#获取每个城市的url
headers={"User-Agent":"Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36"}
url = 'http://jci.xiaozhustatic1.com/e18122903/xzjs?k=Front_Index&httphost=www.xiaozhu.com'     #获取城市名称的链接
ser = input('输入你要查找的地区(1:国内;2:海外):')            #输入你你要查找是国内的短租房还是海外的短租房
html = requests.get(url).text       #通过上面提供的url来爬取每个省份的拼音def choose_area():      #判断你需要查找的是国内的还是海外的,并输出相应的内容city_tup = re.compile('citys[[0-9]\d+]=new Array(.*?);').findall(html)for city_name in city_tup:city_time = re.compile('[0-9]\d*:[0-9]\d*').findall(city_name)if ser == '1':if len(city_time) == 0:city = re.compile('[\u4E00-\u9FA5]+').findall(city_name)[0]     #城市名称city_jc = re.compile('[a-z]\w*').findall(city_name)[1]      #城市拼音city_zf = re.compile('[0-9]\d*').findall(city_name)[0]      #城市租房数量city_dic = {city:[city_jc,city_zf]}yield city_dicelse:passelif ser == '2':if len(city_time) != 0:city = re.compile('[\u4E00-\u9FA5]+').findall(city_name)[0]city_jc = re.compile('[a-z]\w*').findall(city_name)[1]city_zf = re.compile('[0-9]\d*').findall(city_name)[0]city_dic = {city: [city_jc, city_zf]}yield city_dicelse:passdef get_url(city_jc,page):  #提供省份的名称和页码来构建需要爬取的urlurl = 'http://{}.xiaozhu.com/search-duanzufang-p{}-0/'.format(city_jc,page)return url#根据你提供的省份名称来判断,这个省份有多少房源,但是每个省份的房源只显示13页的数据,所有做个判断,超过了的话就只显示13页,没有超过的话就有几页就显示几页
def url_list(city_name):# city_name = input('输入你要查找的城市名称:')for city in choose_area():if city_name in city.keys():if int(int(city[city_name][1])/24) > 13:for page in range(1,14):url = get_url(city[city_name][0],page)yield urlelif int(int(city[city_name][1])/24) <= 13:sum_page = int(int(city[city_name][1])/24) <= 13for page in range(1,sum_page + 1):url = get_url(city[city_name][0], page)yield urldef get_links(url):wb_data = requests.get(url, headers=headers)href=etree.HTML(wb_data.content)href_list=href.xpath('//*[@id="page_list"]/ul/li')for info in href_list:link = info.xpath('a/@href')[0].strip()get_info(link)def sex_is(class_name):if class_name == 'member_girl_ico':return '女'else:return '男'def get_info(url):html_data = requests.get(url, headers=headers)selector = etree.HTML(html_data.text)item = {}item['title'] = selector.xpath('//div[@class="wrap clearfix con_bg"]/div[1]/div[1]/h4/em/text()')[0].strip()item['address'] = selector.xpath('//div[@class="pho_info"]/p/span/text()')[0].strip()item['price'] = selector.xpath('//*[@id="pricePart"]/div[1]/span/text()')[0].strip()item['img'] = selector.xpath('//*[@id="floatRightBox"]/div[3]/div[@class="member_pic"]/a/img/@src')[0].strip()item['sex'] = sex_is(selector.xpath('//*[@class="w_240"]/h6/span/@class')[0].strip())print(item)if __name__ == '__main__':city = input('输入你想爬取的城市名称:')for url in url_list(city):  # 通过传入上海的,获取上海的短租房的所有页面urlprint(url)get_links(url)time.sleep(2)

爬小猪短租发布的房子信息相关推荐

  1. 疫情过去女朋友想去重庆玩,python批量爬取小猪短租重庆民宿信息

    疫情过去女朋友想去重庆玩,python批量爬取小猪短租重庆民宿信息 随着时间的流逝,在中国共产党的领导,全国人民的共同努力下,疫情逐渐受到了控制,逐渐好转,复工,开学有望.最近在和女朋友的闲聊当中得知 ...

  2. Python爬虫||BeautifulSoup4库-以小猪短租为例

    由于上次的文章被同学吐槽了,正则表达式过于麻烦,那就用BeautifulSoup库吧,比正则表达式简单太多了!只需要简单的几条语句,即可完成网页中某个元素的提取.他是python的一个HTML或者XM ...

  3. python爬取网上租房信息_Python爬虫入门 | 5 爬取小猪短租租房信息

    小猪短租是一个租房网站,上面有很多优质的民宿出租信息,下面我们以成都地区的租房信息为例,来尝试爬取这些数据. 1.爬取租房标题 按照惯例,先来爬下标题试试水,找到标题,复制xpath. 多复制几个房屋 ...

  4. 蛋壳公寓信息/信息网爬取/小猪短租/豆瓣/拉钩/人民邮电报/百度电视剧/加载更多-获取字符串中间任意内容

    调试 import requests from lxml import etreebase_url = 'https://www.danke.com/room/bj?page=1'headers = ...

  5. Python爬虫入门 | 5 爬取小猪短租租房信息

    小猪短租是一个租房网站,上面有很多优质的民宿出租信息,下面我们以成都地区的租房信息为例,来尝试爬取这些数据. 小猪短租(成都)页面:http://cd.xiaozhu.com/   1.爬取租房标题 ...

  6. python3通过Beautif和XPath分别爬取“小猪短租-北京”租房信息,并对比时间效率(附源代码)...

    爬虫思路分析: 1. 观察小猪短租(北京)的网页 首页:http://www.xiaozhu.com/?utm_source=baidu&utm_medium=cpc&utm_term ...

  7. ruoyi是怎么点击菜单跳转页面的_小猪短租怎么发布房源

    小猪短租是一款租房软件,那么小猪短租怎么发布房源,今天就让PChouse来为大家讲解一下. 1.下载小猪短租APP,进入首页,在最下面菜单项选择[订单]或者[消息],就会弹出登录界面. 2.点击登录, ...

  8. python爬虫--小猪短租的租房信息

    python爬虫--小猪短租的租房信息 利用requests获取网页 利用Beautifulsoup4和lxml解析网页 具体代码如下 from bs4 import BeautifulSoup im ...

  9. 险些“B轮死”的小猪短租,如何穿越了融资生死线

    文/小饭桌新媒体记者 何斌 编辑/郭文俊 ►2013年的最后一天,陈驰突然接到投资人的电话:"对不起,这个项目不投了". 接近两年之后,作为小猪短租创始人他仍然记得那个晚上--被他 ...

  10. Airbnb、小猪短租等这类短租类产品发展前景如何?

    Tsao 某家公司 打杂- 1 产品信息 1. 产品名称:小猪短租 2. 版本号:4.9.1 3. 体验环境:iPhone 7 (11.2.1) 4. slogin:居住自由主义 5. 产品定位:通过 ...

最新文章

  1. vs2008中xlslib与libxls库的编译及使用
  2. 03.full_text interval查询
  3. mui封装的ajax请求
  4. qt show widget_QWidgetStack类 - Qt 参考中文帮助文档
  5. bzoj 1237: [SCOI2008]配对(DP)
  6. Greenplum 数据库一体机硬件配置正式开源
  7. EMI (电磁干扰)
  8. td.moveRow方法
  9. 主流的Web应用程序平台
  10. ad自动布线过孔_AD15布线方法汇总
  11. 使用 conda uninstall xxx时,一直卡在 Collecting package metadata (repodata.json)
  12. TLE(两行轨道数据)卫星行李数据格式解析
  13. html滚轮下拉动画,html5+css3齿轮滚动动画代码
  14. Hbase hive kudu的区别和使用场景
  15. C++:Error C 1010:在查找预编译头时遇到意外的文件结尾。
  16. Windows server 2012 R2 DHCP主从热备配合华为交换机DHCP中继配置详解(非域控版本)
  17. 《pyMail.py》使用说明
  18. 射频功放OIP3,IIP3,IM3,IMD3几个指标的具体计算
  19. 《财富》推荐的75本必读书 (转载)
  20. 电脑病毒木马怎么彻底清除

热门文章

  1. Qt实现Toast提示消息
  2. echarts社区饼图 echart饼图 玫瑰图
  3. Udacity-A/B TEST
  4. 一流程序员靠数学,二流程序员靠算法,低端看高端就是黑魔法!网友:我是七流靠复制
  5. 简单易懂的现代魔法……原来是C++啊
  6. 统计推断——假设检验中 p 值的含义具体是什么?
  7. SSL证书的概念、作用及分类、价格介绍
  8. 【kotlin】基本语法when的使用,类似于java中的switch,但是又青出于蓝而胜于蓝
  9. 【量化投资】三大经典策略
  10. linux 基础林海峰,word数学公式编辑器-官方版合集下载-多特