温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Python爬取airbnb房源信息的方法

发布时间:2020-08-04 14:00:04 来源:亿速云 阅读:339 作者:清晨 栏目:编程语言

这篇文章将为大家详细讲解有关Python爬取airbnb房源信息的方法,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

Selenium介绍

Python爬取airbnb房源信息的方法

Selenium是一个用于Web应用程序测试的工具,测试直接在浏览器中运行,就像真实用户所做的一样,目前流行的自动化测试就可以靠它来实现。

而自动化测试还需要用我们的webdriver

WebDriver针对各个浏览器而开发,取代了嵌入到被测Web应用中的JavaScript。与浏览器的紧密集成支持创建更高级的测试,避免了JavaScript安全模型导致的限制。除了来自浏览器厂商的支持,WebDriver还利用操作系统级的调用模拟用户输入。

今天就是利用这两个结合来爬取airbnb的房源信息

首先我们需要下载我们浏览器对应版本的WebDriver,比如我的谷歌版本

Python爬取airbnb房源信息的方法

Chrome的WebDriver各个版本下载地址:http://npm.taobao.org/mirrors/chromedriver

如果是其他浏览器就直接去百度了

然后下载好了有一个chromedriver.exe文件,把这个文件放入你的python的Script中,这样就能用了

Python爬取airbnb房源信息的方法

Fidder是一个抓包工具,我们如果需要爬取一些动态数据,也就是我们ajax加载出来的数据,我们一般是无法直接在网页上看到的,所以需要通过抓包工具来获取请求地址

Fidder官网:https://www.telerik.com/fiddler

它能获取你电脑所有发送的请求

案例demo1,爬取今日头条的某条新闻的评论

评论一般是ajax加载出来的,所以一般是动态数据,所有首先我们需要通过抓包工具来获取它的请求地址(因为F12获取不到一些数据地址,所以我们需要下载抓包工具),然后才能获取它的数据。

"""
使用sekenium获取今日头条新闻评论
"""
from selenium import webdriver
import time
# options = webdriver.ChromeOptions()
# options.add_argument("--headless")
driver = webdriver.Chrome()
driver.get("https://www.toutiao.com/group/6749399264998212110/")
# 获取 加载更多 超链接
loadMore = driver.find_element_by_css_selector("a.c-load-more")
# 模拟浏览器点击事件
loadMore.click()
time.sleep(2)
# 获取数据
contentDivs = driver.find_elements_by_css_selector("div.c-content")
for contentDiv in contentDivs:
    content = contentDiv.find_element_by_tag_name("p").text
    print(content)

然后存入了我们的text文件中,可以看到,这就是一个JSON的返回数据

{'message': 'success', 'data': {'has_more': True, 'total': 106, 'comments': [{'text': '限制的是在北京居住生活而长期
驾驶非京牌车的行为。正常来京办事不受影响。北京车牌到外地也是短期的,所以不存在外地也限制北京车的问题。', 
'digg_count': 615, 'reply_data': {'reply_list': []}, 'reply_count': 0, 'create_time': 1571398213, 'user': 
{'avatar_url': 'https://sf1-ttcdn-tos.pstatp.com/img/mosaic-legacy/3796/2975850990~120x256.image', 'user_id': 
100388200396, 'name': '人间正道的丝路花雨'}, 'dongtai_id': '6749103925351350275', 'user_digg': 0, 'id': 
'6749103925351350275'}, {'text': '支持,早该限制外地牌照,就像北京的房子,外地人来京就租房子,如果您来就盖房这地方
就没办法生活了', 'digg_count': 686, 'reply_data': {'reply_list': []}, 'reply_count': 0, 'create_time': 1571398053, 
'user': {'avatar_url': 'https://p3.pstatp.com/thumb/dafd0002dc655e0d9151', 'user_id': 52617043834, 'name': 
'点1449308'}, 'dongtai_id': '6749103240320647171', 'user_digg': 0, 'id': '6749103240320647171'}, {'text': 
'举双手赞成

关于Python爬取airbnb房源信息的方法就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI