https://www.mafengwo.cn/poi/16790.html爬取这个网站的点评信息
时间: 2023-08-07 17:11:00 浏览: 123
爬取大众点评网商家信息的爬虫
3星 · 编辑精心推荐
好的,您可以使用以下代码来爬取指定网站的点评信息:
```python
import time
import openpyxl
from selenium import webdriver
from bs4 import BeautifulSoup
url = "https://www.mafengwo.cn/poi/16790.html"
edge = webdriver.Edge()
edge.get(url)
comments_data = []
# 等待页面加载完成
time.sleep(5)
# 点击展开更多评论按钮
more_btn = edge.find_element_by_css_selector(".rev-total a")
edge.execute_script("arguments[0].click();", more_btn)
time.sleep(2)
# 循环获取点评信息
while True:
# 获取页面源码
html = edge.page_source
soup = BeautifulSoup(html, "html.parser")
# 获取每条点评的信息
reviews = soup.select(".rev-item")
for review in reviews:
# 获取点评内容
content = review.select_one(".rev-txt").get_text().strip()
print("点评内容:", content)
# 获取点评时间
date = review.select_one(".time").get_text().strip()
print("点评时间:", date)
# 获取点评用户
user = review.select_one(".name").get_text().strip()
print("点评用户:", user)
# 获取点评评分
score = review.select_one(".score span").get_text().strip()
print("点评评分:", score)
print("-----------------------------")
comments_data.append([content, date, user, score])
# 翻页操作
next_btn = edge.find_element_by_css_selector(".pg-next")
if next_btn.get_attribute("class") == "pg-next":
edge.execute_script("arguments[0].click();", next_btn)
time.sleep(2)
else:
break
# 将爬取的点评信息存入comments.xlsx文件中
wb = openpyxl.Workbook()
ws = wb.active
ws.append(["点评内容", "点评时间", "点评用户", "点评评分"])
for data in comments_data:
ws.append(data)
wb.save("comments.xlsx")
wb.close()
# 关闭浏览器
edge.quit()
```
执行代码后,将在同一目录下生成一个名为comments.xlsx的Excel文件,其中包含爬取到的点评信息。
请注意,您需要先安装selenium、beautifulsoup和openpyxl库,并且根据您的浏览器类型下载对应的WebDriver并配置到环境变量中。
希望对您有所帮助!如果您有任何其他问题,请随时提问。
阅读全文