爬取地址:http://bj.xiaozhu.com/
包含信息:多页;每页24个链接
爬取要求:爬取每个链接的标题、地址、价格、图片链接、主人名称、主人性别

from bs4 import BeautifulSoup
import requestsdef get_info(page_number):urls = get_page_link(page_number)for url in urls:wb_data = requests.get(url)soup = BeautifulSoup(wb_data.text,'html.parser')title = soup.title.textaddress = soup.select('div.pho_info > p')[0].get('title')price = soup.select('div.day_l > span')[0].textpic = soup.select('#curBigImage')[0].get('src')host_name = soup.select('a.lorder_name')[0].texthost_gender = soup.select('div.member_pic > div')[0].get('class')[0]def print_gender(class_name):#定义男、女if class_name == 'member_ico1':return '女'if class_name == 'member_ico':return '男'data = {'title':title,'address':address,'price':price,'pic':pic,'host_name':host_name,'host_gender':print_gender(host_gender)}print(data)def get_page_link(page_number):#批量获取链接page_link = []#存放链接,解析时遍历这个列表然后访问for each_number in range(1, page_number):#每页24个链接full_url = 'http://bj.xiaozhu.com/search-duanzufang-p{}-0/'.format(str(each_number))wb_data = requests.get(full_url)soup = BeautifulSoup(wb_data.text,'html.parser')for url in soup.select('a.resule_img_a'):page_link.append(url.get('href'))return page_link#注意:print的返回值不能迭代!!!所以此处不能写为:return print(page_link)
get_info(page_number)#输入爬取的总页码数

部分输出:

{'title': '三里屯繁华区太古里酒吧街工体摩登时代主题一居-北京朝阳短租房|日租房 -小猪', 'host_name': 'zoehh', 'price': '398', 'address': '北京市朝阳区三里屯南路', 'pic': 'http://image.xiaozhustatic1.com/00,800,533/6,0,61,6262,1800,1200,05be8a2a.jpg', 'host_gender': '女'}
{'title': '【独卫】望京Soho百兆宽带&宜家床垫大床房-北京朝阳短租房|日租房 -小猪', 'host_name': 'Liicy', 'price': '285', 'address': '北京市朝阳区国风北京', 'pic': 'http://image.xiaozhustatic1.com/00,800,533/6,0,56,6219,1800,1200,27d55c0f.jpg', 'host_gender': '女'}
{'title': '望京华彩十四号线精美豪华大一居-北京朝阳短租房|日租房 -小猪', 'host_name': '想要', 'price': '395', 'address': '北京市朝阳区望京利泽西园', 'pic': 'http://image.xiaozhustatic1.com/00,800,533/6,0,62,2913,1800,1200,4ecf03a3.jpg', 'host_gender': None}
{'title': '地铁6号线常营长楹天街豪华公寓-北京朝阳短租房|日租房 -小猪', 'host_name': '爱猪我家萍姐', 'price': '197', 'address': '北京市朝阳区6号地铁常营天街豪华公寓', 'pic': 'http://image.xiaozhustatic1.com/00,800,533/4,0,26,6729,1800,1200,768006fe.jpg', 'host_gender': '女'}
{'title': '双井地铁口豪华欧式装修大二居-北京朝阳短租房|日租房 -小猪', 'host_name': '少寒', 'price': '596', 'address': '北京市朝阳区双井西大望路珠江帝景', 'pic': 'http://image.xiaozhustatic1.com/00,800,533/6,0,3,992,1800,1200,32297300.jpg', 'host_gender': '男'}
{'title': '故宫东门大院古典套间,步行至故宫天安门王府井-北京东城短租房|日租房 -小猪', 'host_name': 'zhengfanwu', 'price': '998', 'address': '北京市东城区磁器库北巷', 'pic': 'http://image.xiaozhustatic1.com/00,800,533/6,0,99,6792,1800,1200,65ec7d49.jpg', 'host_gender': '女'}
{'title': '【爱上我的家】亚运村10分钟地铁站阳光大主卧-北京朝阳短租房|日租房 -小猪', 'host_name': '新新的家', 'price': '228', 'address': '北京市朝阳区亚运村小营北路(大屯东地铁站往东500米,比邻完美世界)', 'pic': 'http://image.xiaozhustatic1.com/00,800,533/1,0,94,4002,825,550,d2a2390e.jpg', 'host_gender': '男'}
{'title': '六道口轻民宿-与书同眠6人间-北京海淀短租房|日租房 -小猪', 'host_name': '霹雳娇娃子', 'price': '108', 'address': '北京市海淀区学院路逸成东苑', 'pic': 'http://image.xiaozhustatic1.com/00,800,533/6,0,5,3548,1800,1200,9f2e73e2.jpg', 'host_gender': '女'}
{'title': '望京商圈,毗邻地铁5分钟,漫威主题大两居-北京朝阳短租房|日租房 -小猪', 'host_name': '想要', 'price': '395', 'address': '北京市朝阳区广顺北大街利泽西园', 'pic': 'http://image.xiaozhustatic1.com/00,800,533/6,0,66,803,1800,1200,38a4c686.jpg', 'host_gender': None}
{'title': '独立卫浴邻798、望京、酒仙桥更多优惠房源。-北京朝阳短租房|日租房 -小猪', 'host_name': '暖阳洋Sunny', 'price': '268', 'address': '北京市朝阳区彩虹路', 'pic': 'http://image.xiaozhustatic1.com/00,800,533/2,0,71,458,1800,1200,a9c5ea82.jpg', 'host_gender': None}

爬虫例子——多页、函数模板相关推荐

  1. C++函数模板非类型参数的使用介绍

    C++函数模板非类型参数的使用介绍 圣才学习网·IT类 2012-03-24 09:44 阅读2270次 [大] [中] [小] 扫码手机阅读 用圣才电子书APP或微信扫一扫,在手机上阅读本文,也可分 ...

  2. 笔记②:牛客校招冲刺集训营---C++工程师(面向对象(友元、运算符重载、继承、多态) -- 内存管理 -- 名称空间、模板(类模板/函数模板) -- STL)

    0618 C++工程师 第5章 高频考点与真题精讲 5.1 指针 & 5.2 函数 5.3 面向对象(和5.4.5.5共三次直播课) 5.3.1 - 5.3.11 5.3.12-14 友元 友 ...

  3. Python网络爬虫 - 一个简单的爬虫例子

    下面我们创建一个真正的爬虫例子 爬取我的博客园个人主页首页的推荐文章列表和地址 scrape_home_articles.py from urllib.request import urlopen f ...

  4. 函数重载和 函数模板

    一.函数重载(overload) #include <iostream> using namespace std;//计算两个参数a,b的乘积的函数 int product(int a,i ...

  5. [转]C++函数模板与模板函数

    1.函数模板的声明和模板函数的生成 1.1函数模板的声明 函数模板可以用来创建一个通用的函数,以支持多种不同的形参,避免重载函数的函数体重复设计.它的最大特点是把函数使用的数据类型作为参数. 函数模板 ...

  6. templateclass T函数模板

    //参考  http://prglab.com/cms/pages/c-tutorial/advanced-concepts/templates.php 函数模板( Function template ...

  7. c++ swap函数头文件_C++函数模板(泛型编程)

    模板是泛型编程的基础,泛型编程即以一种独立于任何特定类型的方式编写代码. 模板是创建泛型类或函数的蓝图或公式.库容器,比如迭代器和算法,都是泛型编程的例子,它们都使用了模板的概念. 每个容器都有一个单 ...

  8. 重载函数与函数模板(转)

    原文地址:http://www.jizhuomi.com/software/45.html hello,everyone,鸡啄米上一节讲到的是函数的参数传递和内联函数,这一讲鸡啄米会给大家讲点稍微有点 ...

  9. C++学习笔记35:函数模板

    函数模板 函数模板的目的 设计通用的函数,以适应广泛的数据型式 函数模板的定义格式 template<模板型式参数列表>返回值型式 函数名称(参数列表): 原型:template<c ...

最新文章

  1. 向访客和爬虫显示不同的内容
  2. freemarker include 和 import
  3. div+css相对定位和绝对定位
  4. ftp主要完成与远程计算机的连接,2015计算机三级《网络技术》复习重点:远程登录服务和FTP服务...
  5. hdu 4324 Triangle LOVE
  6. 在Atom中运行脚本
  7. matlab矩阵内存预分配
  8. Ubuntu下安装并配置VS Code编译C++
  9. gnome3 修改桌面背景图片模式
  10. 090717 T OOD时的接口
  11. 用户需求规格说明书模板,介绍
  12. ISO14001是什么管理体系
  13. 详解 ARM PMU (Performance Monitoring Unit)
  14. 优化Oracle数据库查询10个方法
  15. 【转】SCI论文写法攻略
  16. HashMap底层详解
  17. Android 遇到的疑难杂症及解决方式。
  18. 在IDEA中使用JUnit4和JUnitGenerator V2.0自动生成测试模块
  19. 如何提高友盟推送的消息到达率
  20. [qiankun]Uncaught Error application ‘vue2‘ died in status LOADING_SOURCE_CODE [qiankun] You need t

热门文章

  1. 惩戒翻倍对抗利率下行,宜信、达飞、恒昌与逃废债互撕
  2. 单品秒杀(百万次秒杀、亿万次秒杀)
  3. 基于Flink打造实时计算平台为企业赋能
  4. 需求治理如何实施(二)
  5. thinkphp6 短信宝/腾讯云发送手机号验证码
  6. 初遇电容-电容在电路中的作用
  7. ENC28J60学习笔记——第2部分
  8. java如何获取手机号码归属地_在java中如何根据手机号查询号码归属地
  9. 用Python解析HTML,BeautifulSoup使用简介
  10. 在线旅游市场的延进以及发展趋势访谈回顾