大家好,我一直在尝试抓取一些包含不断变化的值的网页,但到目前为止我无法获得价格。任何人都可以帮助我,这是我到目前为止到达的地方!import requestsimport bs4from urllib.request import Request, urlopen as uReqfrom bs4 import BeautifulSoup as soup from selenium import webdriverfrom selenium.webdriver.firefox.firefox_binary import FirefoxBinaryfrom selenium.webdriver.firefox.options import Optionsfrom selenium.webdriver.common.desired_capabilities import DesiredCapabilitiesmy_url = 'https://www.cryptocompare.com/'binary = FirefoxBinary('C:/Program Files/Mozilla Firefox/firefox.exe')options = Options()options.set_headless(headless=True)options.binary = binarycap = DesiredCapabilities().FIREFOXcap["marionette"] = Truedriver = webdriver.Firefox(firefox_options=options, capabilities=cap, executable_path="C:/Users/Genti/AppData/Local/Programs/Python/Python36-32/Lib/site-packages/selenium/geckodriver.exe")browser = webdriver.Firefox(firefox_binary=binary)browser.get(my_url)html = browser.execute_script("return document.documentElement.outerHTML")sel_soup = soup(html, 'html.parser')prices = sel_soup.findAll("td", {"class":"price"})print(prices)
3 回答

UYOU
TA贡献1878条经验 获得超4个赞
以防万一,如果您想要所有 10 个价格。您必须将所有价格存储在一个列表中,如下所示:
all_prices = driver.find_elements_by_css_selector("td[class='price'] div")
然后只需遍历循环即可获取值:
for price in all_prices: print(price.text)
如果您遇到任何困难,请告诉我。
添加回答
举报
0/150
提交
取消