📅  最后修改于: 2023-12-03 14:49:50.489000             🧑  作者: Mango
如果你想要获得对于产品、服务、内容等的更多反馈,那么抓取用户评论就是必不可少的。本文将介绍如何使用Python抓取Google评论和评分,以便于你在做产品、内容等方面的优化时更好地了解用户的反馈。
在开始之前,你需要准备:
requests
、beautifulsoup4
、pandas
等相关Python库在安装完所需库之后,你需要准备好要搜索的关键词和相关设置,例如语言、评论时间等。
下面是使用Python抓取Google评论和评分的代码片段,并已按markdown标明:
import requests
from bs4 import BeautifulSoup
import pandas as pd
# 定义要搜索的关键词和搜索结果页数
search_query = '产品名称'
num_of_result_pages = 3
# 定义要抓取的语言和评论时间
language = 'en' # 英文
comment_time = 'past_year' # 一年内的评论
# 定义一个空的DataFrame,用于存储所有的评论和评分信息
df = pd.DataFrame(columns=['comment', 'rating'])
# 循环抓取每一页的搜索结果
for i in range(num_of_result_pages):
url = f'https://www.google.com/search?q={search_query}&hl={language}&tbs=cdr:{comment_time}&start={i*10}'
headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3'}
response = requests.get(url, headers=headers)
soup = BeautifulSoup(response.content, 'html.parser')
# 抓取每个搜索结果的评论和评分信息
for div in soup.findAll('div', {'class': 'g'}):
review = div.find('span', {'class': 'review-text'}).text
rating = div.find('div', {'class': 'vQHuPe bUWb7c'}).find('div')['aria-label']
# 将评论和评分信息添加到DataFrame中
df = df.append({'comment': review, 'rating': rating}, ignore_index=True)
# 将DataFrame中的数据保存到CSV文件中
df.to_csv('google_reviews.csv', index=False)
通过以上代码片段,你可以轻松抓取Google上关于你想要搜索的产品、服务、内容等的评论和评分信息。这样,你就可以更好地了解用户对你的产品、服务、内容等的反馈,以便于你做出更好的改进和优化。