Python 抓取谷歌播放评论

Python 抓取谷歌播放评论,python,web-scraping,beautifulsoup,urllib,Python,Web Scraping,Beautifulsoup,Urllib,我是一名编程新手,最近我尝试使用以下程序使用python刮取google play评论: from bs4 import BeautifulSoup import urllib.request url = input("Enter URL: ") open_url = urllib.request.urlopen(url) soup = BeautifulSoup(open_url, "html.parser") reviews = [] for i in soup.find_all("d

我是一名编程新手,最近我尝试使用以下程序使用python刮取google play评论:

from bs4 import BeautifulSoup
import urllib.request

url = input("Enter URL: ")
open_url = urllib.request.urlopen(url)

soup = BeautifulSoup(open_url, "html.parser")

reviews = []
for i in soup.find_all("div", {"jscontroller" : "X"}, {"class" : "X"}):
    per_review = i.find("X")
    reviews.append(per_review)

print(reviews)  
问题在这一部分:

for i in soup.find_all("div", {"jscontroller" : "X"}, {"class" : "X"}):
    per_review = i.find("X")
    reviews.append(per_review) 
我尝试了许多父节点和包含评论的当前节点,但输出总是一个空列表。有人能演示一下如何实现我的目标吗?谢谢

编辑

例如,如果我将的URL与以下参数一起使用:

reviews = []
for i in soup.find_all("div", {"jscontroller" : "LVJlx"}, {"class" : "UD7Dzf"}):
    per_review = i.find("span")
    reviews.append(per_review)

print(reviews)    

输出为空列表。

不同URL中的
jscontroller
class
值不一致。你可以试试类似的东西

soup.find_all('div', {'jscontroller': True}) 
但这不会给你所有的评论,因为它们是在你向下滚动页面时动态添加的

这意味着您需要使用实际的浏览器刮取页面,或者您可以尝试使用开发人员工具对API调用进行反向工程

e、 g


你能提供一个URL示例吗?我已经在上面列出了一个示例@NomadMonadI尝试在super mario run中实现这一点,结果生成的是游戏描述,而不是评论@游牧民族