当前位置:   article > 正文

Python入门实例:获取旅游景点的真实评价_旅游网站景点评论数据爬取代码

旅游网站景点评论数据爬取代码

前言

猫途鹰(TripAdvisor)是一个旅游点评网站,如果您想要爬取该网站的数据,需要了解该网站的访问规则和爬取限制。

代码实现

针对猫途鹰网站,可以使用Python的第三方库Selenium模拟浏览器行为,模拟用户在网站上进行的操作,从而获取数据。以下是一个简单的实现过程:

1. 安装必要的库:Selenium和BeautifulSoup

pip install selenium beautifulsoup4
  • 1

2. 下载对应浏览器的webdriver,安装到系统中

# 以Chrome浏览器调用为例
# 下载对应管理器
from selenium import webdriver
driver_path = "/path/to/chromedriver"
options=webdriver.ChromeOptions()
options.add_argument('--no-sandbox') # 以root模式下不是必须的,非root模式下才有必要
browser = webdriver.Chrome(executable_path=driver_path, options=options)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

3. 发送HTTP请求,获取目标页面数据

url = "https://www.tripadvisor.cn/Attractions-g186338-Activities-London_England.html#FILTERED_LIST"
browser.get(url)
html = browser.page_source
soup = BeautifulSoup(html, "html.parser")
  • 1
  • 2
  • 3
  • 4

4. 解析HTML页面,获取所需数据

results = []
for element in soup.find_all("div", class_="listItem"):
    name = element.find("div", class_="listing_title").text
    rating = element.find("span", class_="ui_bubble_rating")['class'][1][1]
    review_count = element.find("a", class_="review_count").text.split(" ")[0]
    results.append((name, rating, review_count))
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

5. 采集数据并保存,便于之后的处理和分析

df = pd.DataFrame(results, columns=["name", "rating", "review_count"])
df.to_csv("tripadvisor_data.csv", index=False)
  • 1
  • 2

请注意,具体的爬取过程可能随着网站的改变而变化,请您自己进行具体的分析和处理。本人只是提供一个简单的实现过程供参考。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/羊村懒王/article/detail/372206
推荐阅读
相关标签
  

闽ICP备14008679号