【问题标题】:I am trying to extract names of the reviewers in steam , but I am getting empty list , where am I wrong?我正在尝试在 Steam 中提取评论者的姓名,但我得到的是空列表,我错在哪里?
【发布时间】:2021-04-16 10:13:24
【问题描述】:
from bs4 import BeautifulSoup
from selenium import webdriver
import requests
import lxml
import openpyxl as op
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
import time

# from lxml


html_text = 'https://store.steampowered.com/app/354400/Tadpole_Treble/'
# wb = op.load_workbook(
#     'https://1drv.ms/x/s!Aiw1ZpHhhvdugd0Z_eEBU_KzDlxiuA?e=cWevHn')

driver = webdriver.Chrome(
    executable_path='C:/Users/atif/Downloads/chromedriver.exe')

driver.get(html_text)
driver.implicitly_wait(10)


names = driver.find_elements_by_xpath('//div[@class="persona_name"]/a')


print(len(names))

for name in names:
    print(name.text)

# body = soup.body

# titles = headers.find_all('a', class_='title fw500 ellipsis')
# for h in headers:
#     # title = h.find('a', class_='title fw500 ellipsis').text
#     print(h.a['href'])

# a_links = body.find_all("a")
driver.close()

这就是我得到的答案

[20380:14344:0416/154733.584:ERROR:device_event_log_impl.cc(214)] [15:47:33.584] 蓝牙:bluetooth_adapter_winrt.cc:1072 默认适配器失败。

0 结果显示为零

【问题讨论】:

    标签: selenium web-scraping steam


    【解决方案1】:

    您的代码似乎是正确的,但当时没有加载该元素。这就是为什么你得到空列表的原因。一旦您向下滚动页面到最后,评论就会加载。我已经尝试了下面的代码,它对我有用。请让我知道它是否适合您。

    from time import sleep
    from selenium import webdriver
    from selenium.webdriver.support.wait import WebDriverWait
    
    driver = webdriver.Chrome()
    wait = WebDriverWait(driver, 10)
    
    driver.get('https://store.steampowered.com/app/354400/Tadpole_Treble')
    driver.execute_script("window.scrollTo(0,document.body.scrollHeight)")
    sleep(5)
    
    ReviewersNames = driver.find_elements_by_xpath("//div[@class=\"persona_name\"]/a")
    
    for reviewer in ReviewersNames:
        print(reviewer.text)
    

    注意 - 您也可以在上面使用显式等待。

    如果解决了您的问题,请将其标记为答案。

    【讨论】:

      猜你喜欢
      • 2020-01-31
      • 2021-10-16
      • 2013-06-30
      • 1970-01-01
      • 2017-08-22
      • 1970-01-01
      • 2019-02-20
      • 2014-08-08
      • 1970-01-01
      相关资源
      最近更新 更多