python - 尝试创建字典并附加到列表
问题描述
我试图从网站链接中抓取数据,当我们点击评论底部的“Sterne Anzeigen”按钮时,我们找到了子评级,并希望抓取该评级并将其存储在 CSV 文件中。我能够执行操作,例如单击每个评论的按钮并编写代码以提取子评分,如下所示
articles=browser.find_elements_by_class_name("index__reviewBlock__27gnB")
data=[]
for article in articles:
try:
element2 = article.find_elements_by_tag_name('button')
except EX.NoSuchElementException:
pass
for element in element2:
ActionChains(browser).click(element).perform()
row={}
Stars=article.find_elements_by_class_name("index__factor__3Z15R")
for item in Stars:
key = item.find_element_by_class_name("index__title__W4hOp").text
value = item.find_element_by_xpath("//*[@class='index__stars__2ads4 index__medium__1wpWb index__stars__3lgvx']").get_attribute("data-score")
row[key]=value
data.append(row)
自从使用此代码后,任何人都可以帮助我获得确切的评级,因为我得到了所有评级值“5”?
提前致谢
解决方案
尝试这个
data=[]
row={}
Stars=article.find_elements_by_class_name("index__factor__3Z15R")
for item in Stars:
key = item.find_element_by_class_name("index__title__W4hOp").text
value = item.find_element_by_xpath("//*[@class='index__stars__2ads4
index__medium__1wpWb index__stars__3lgvx']").get_attribute("data-score")
row.update(key=value)
data.append(row)
推荐阅读
- android - Android - 使用 retrofit2 请求动态 IP 地址
- laravel - 如何在 laravel 中使用从中间件解析到控制器的构造函数?
- c# - Visual Studio 2019 DirectX 使用指令
- python - OCR 给出错误的输出
- javascript - Firebase 实时数据库,仅在键 && 日期不存在时发送数据
- javascript - React-> 为什么我的反应不显示对状态所做的更改而不刷新?
- elasticsearch - 复制弹性搜索主分片
- java - Java VM 的元空间运行满
- python - 如何通过迭代另一个数据框的行来填充特定索引和列的数据框?
- javascript - 如何使下拉列表和单选按钮只读?