Python 爬虫练手项目—酒店信息爬取
from bs4 import BeautifulSoup
import requests
import time
import reurl = 'http://search.qyer.com/hotel/89580_4.html'
urls = ['http://search.qyer.com/hotel/89580_{}.html'.format(str(i)) for i in range(1,10)] # 最多157页
infos = []
# print(urls)# 批量爬取数据
def getAUrl(urls):data_number = 0for url in urls:getAttractions(url)print('--------------{}-----------------'.format(len(infos)),sep='\n')# 爬取当页面数据
def getAttractions(url,data = None):web_data = requests.get(url)time.sleep(2)soup = BeautifulSoup(web_data.text,'lxml')# print(soup)hotel_names = soup.select('ul.shHotelList.clearfix > li > h2 > a')hotel_images = soup.select('span[class="pic"] > a > img')hotel_points = soup.select('span[class="points"]')hotel_introduces = soup.select('p[class="comment"]')hotel_prices = soup.select('p[class="seemore"] > span > em')if data == None:for name,image,point,introduce,price in \zip(hotel_names,hotel_images,hotel_points,hotel_introduces,hotel_prices):data = {'name':name.get_text().replace('\r\n','').strip(),'image':image.get('src'),'point':re.findall(r'-?\d+\.?\d*e?-?\d*?', point.get_text())[0],'introduce':introduce.get_text().replace('\r\n','').strip(),'price':int(price.get_text())}# print(data)infos.append(data)# 根据价格从高到低进行排序
def getInfosByPrice(infos = infos):infos = sorted(infos, key=lambda info: info['price'], reverse=True)for info in infos:print(info['price'], info['name'])# getAttractions(url)
爬取的网站链接
穷游网
遇到的问题及解决办法
1.【转载】Python: 去掉字符串开头、结尾或者中间不想要的字符
①Strip()方法用于删除开始或结尾的字符。lstrip()|rstirp()分别从左右执行删除操作。默认情况下会删除空白或者换行符,也可以指定其他字符。
②如果想处理中间的空格,需要求助其他技术 ,比如replace(),或者正则表达式
③strip()和其他迭代结合,从文件中读取多行数据,使用生成器表达式
④更高阶的strip
可能需要使用translate()方法
2. 【转载】Python:object of type 'Response' has no len(),如何解决?
需要下载代码的可以到我的GitHub上下载 https://github.com/FightingBob/-Web-Crawler-training 如果觉得可以,请给我颗star鼓励一下,谢谢!
转载于:https://www.cnblogs.com/littlebob/p/9198709.html
Python 爬虫练手项目—酒店信息爬取相关推荐
- python爬取酒店信息_Python 爬虫练手项目—酒店信息爬取
from bs4 import BeautifulSoup import requests import time import re url = 'http://search.qyer.com/ho ...
- 2021-07-31 Python爬虫练手项目--爬取上千张明星美图
爬虫每日练手--上千张美女明星优质图 1.确定目标 2.提取链接 爬取封面链接 爬取子页面 3.代码及结果 完整代码 输出结果 代码细节解释 设置简单反爬 打印输出结果 4.成品欣赏 1.确定目标 目 ...
- 【爬虫练手小demo】爬取古诗词
爬取的网站链接为 base_url= https://www.gushiwen.org/ 想按照页面右边栏的各个分类进行爬取,例如"春天","夏天"," ...
- 熬夜整理出了70个清华大佬都在用的Python经典练手项目【附源码】
我们都知道,不管学习那门语言最终都要做出实际的东西来,而对于编程而言,这个实际的东西当然就是项目啦,不用我多说大家都知道学编程语言做项目的重要性. 于是,小编熬了几个通宵,终于整理出了70个清华大佬都 ...
- python练手经典100例-Python 的练手项目有哪些值得推荐?
首先两点建议:最好不要写太应用的程序练手,如果你发现你写程序的大部分时间都在查库手册(或者类似的事情),那就是大家所说的"搬砖"了:要思考什么更像是知识,什么只是经验,还是那句老话 ...
- Python 爬虫 之 Selenium 模拟打开操作浏览器爬取斗鱼全部视播相关信息,并json保存信息
Python 爬虫 之 Selenium 模拟打开操作浏览器爬取斗鱼全部视播相关信息,并json保存信息 基础: Python 爬虫 之 Selenium.webdriver 的安装,以及模拟打开操作 ...
- python爬虫多久能学会-不踩坑的Python爬虫:如何在一个月内学会爬取大规模数据...
原标题:不踩坑的Python爬虫:如何在一个月内学会爬取大规模数据 Python爬虫为什么受欢迎 如果你仔细观察,就不难发现,懂爬虫.学习爬虫的人越来越多,一方面,互联网可以获取的数据越来越多,另一方 ...
- Python爬虫学习基础——5分钟学会爬取B站视频日播放量排行
Python爬虫学习基础--5分钟学会爬取B站视频日播放量排行 基础包含 requests pyquery 进入正题 基础包含 这也是我当初第一次学习爬虫时做的练习,感觉给初学者练笔挺不错的.运用的知 ...
- 【2020-10-27】 scrapy爬虫之猎聘招聘信息爬取
声明:本文只作学习研究,禁止用于非法用途,否则后果自负,如有侵权,请告知删除,谢谢! scrapy爬虫之猎聘招聘信息爬取 1.项目场景 目标网址:https://www.liepin.com/zhao ...
最新文章
- 1048 Find Coins(two pointers解法)
- 通过Mesos、Docker和Go,使用300行代码创建一个分布式系统
- 急速收藏:4套iOS SDK的H5打通方案
- 网易云信亮相 LiveVideoStackCon 2021,解构自研大规模传输网 WE-CAN
- oracle11告警日志,oracle 11.2.0.4 告警日志里错误
- Jmeter JDBC Request执行多条SQL语句
- Oracle 9i 的安装(图解)
- 使用Canvas合成多张图片和文字为一张图片
- 微软输入法数字有间隔_各种中文输入法中输入间隔号“·”的措施
- Introduction to TurboFan
- 如何正确计算LINUX内存使用率
- Android : Broadcast
- 感知机算法(一)PLA
- 侧耳倾听中日对照剧本
- 知识点滴 - 无线电频谱划分
- 基于贝叶斯算法文本分析之新闻分类
- 个人计划日程提升系统APP的设计与实现
- FIR滤波器设计(Kaiser窗案例)
- 中职计算机英语教学计划,中职英语教学计划
- 存货核算当期单价(调整当期存货单价)