回答此问题可获得 20 贡献值,回答如果被采纳可获得 50 分。
<p>我在找代码方面的帮助。你知道吗</p>
<p>我试图从一个网站打印出一个元素,但是我从我尝试的方法中得到不同的错误消息,它们都不起作用。你知道吗</p>
<p>我已尝试使用具有以下代码的类名称:</p>
<pre><code>from selenium import webdriver
browser = webdriver.Chrome('/home/cena/Downloads/chromedriver')
poeisz_url = "https://webwinkel.poiesz-supermarkten.nl/boodschappen/producten/631258"
poeisz_classname = "full-product full-product--price__for"
browser.get(poeisz_url)
elem = browser.find_element_by_class_name(poeisz_classname)
print(elem.text)
</code></pre>
<p>此操作返回以下错误消息:</p>
<pre><code>Traceback (most recent call last):
File "/home/cena/.PyCharmCE2019.1/config/scratches/scratch_2.py", line 9, in <module>
elem = browser.find_element_by_class_name(poeisz_classname)
File "/usr/local/lib/python3.7/dist-packages/selenium/webdriver/remote/webdriver.py", line 564, in find_element_by_class_name
return self.find_element(by=By.CLASS_NAME, value=name)
File "/usr/local/lib/python3.7/dist-packages/selenium/webdriver/remote/webdriver.py", line 978, in find_element
'value': value})['value']
File "/usr/local/lib/python3.7/dist-packages/selenium/webdriver/remote/webdriver.py", line 321, in execute
self.error_handler.check_response(response)
File "/usr/local/lib/python3.7/dist-packages/selenium/webdriver/remote/errorhandler.py", line 242, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.InvalidSelectorException: Message: invalid selector: Compound class names not permitted
(Session info: chrome=74.0.3729.169)
(Driver info: chromedriver=74.0.3729.6 (255758eccf3d244491b8a1317aa76e1ce10d57e9-refs/branch-heads/3729@{#29}),platform=Linux 4.15.0-50-generic x86_64)
</code></pre>
<p>所以我尝试使用xpath和css选择器来解决这个问题:</p>
<pre><code>from selenium import webdriver
browser = webdriver.Chrome('/home/cena/Downloads/chromedriver')
poeisz_url = "https://webwinkel.poiesz-supermarkten.nl/boodschappen/producten/631258"
poeisz_classname = "full-product full-product--price__for"
browser.get(poeisz_url)
elem = browser.find_element_by_xpath("//*[@class='" + poeisz_classname + "']")
print(elem.text)
</code></pre>
<pre><code>from selenium import webdriver
browser = webdriver.Chrome('/home/cena/Downloads/chromedriver')
poeisz_url = "https://webwinkel.poiesz-supermarkten.nl/boodschappen/producten/631258"
poeisz_classname = "full-product full-product--price__for"
browser.get(poeisz_url)
elem = browser.find_element_by_css_selector("*[class^='" + poeisz_classname + "']")
print(elem.text)
</code></pre>
<p>他们依次返回以下错误:</p>
<pre><code>Traceback (most recent call last):
File "/home/cena/.PyCharmCE2019.1/config/scratches/scratch_2.py", line 9, in <module>
elem = browser.find_element_by_xpath("//*[@class='" + poeisz_classname + "']")
File "/usr/local/lib/python3.7/dist-packages/selenium/webdriver/remote/webdriver.py", line 394, in find_element_by_xpath
return self.find_element(by=By.XPATH, value=xpath)
File "/usr/local/lib/python3.7/dist-packages/selenium/webdriver/remote/webdriver.py", line 978, in find_element
'value': value})['value']
File "/usr/local/lib/python3.7/dist-packages/selenium/webdriver/remote/webdriver.py", line 321, in execute
self.error_handler.check_response(response)
File "/usr/local/lib/python3.7/dist-packages/selenium/webdriver/remote/errorhandler.py", line 242, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"xpath","selector":"//*[@class='full-product full-product--price__for']"}
(Session info: chrome=74.0.3729.169)
(Driver info: chromedriver=74.0.3729.6 (255758eccf3d244491b8a1317aa76e1ce10d57e9-refs/branch-heads/3729@{#29}),platform=Linux 4.15.0-50-generic x86_64)
</code></pre>
<pre><code>Traceback (most recent call last):
File "/home/cena/.PyCharmCE2019.1/config/scratches/scratch_2.py", line 9, in <module>
elem = browser.find_element_by_css_selector("*[class^='" + poeisz_classname + "']")
File "/usr/local/lib/python3.7/dist-packages/selenium/webdriver/remote/webdriver.py", line 598, in find_element_by_css_selector
return self.find_element(by=By.CSS_SELECTOR, value=css_selector)
File "/usr/local/lib/python3.7/dist-packages/selenium/webdriver/remote/webdriver.py", line 978, in find_element
'value': value})['value']
File "/usr/local/lib/python3.7/dist-packages/selenium/webdriver/remote/webdriver.py", line 321, in execute
self.error_handler.check_response(response)
File "/usr/local/lib/python3.7/dist-packages/selenium/webdriver/remote/errorhandler.py", line 242, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"css selector","selector":"*[class^='full-product full-product--price__for']"}
(Session info: chrome=74.0.3729.169)
(Driver info: chromedriver=74.0.3729.6 (255758eccf3d244491b8a1317aa76e1ce10d57e9-refs/branch-heads/3729@{#29}),platform=Linux 4.15.0-50-generic x86_64)
</code></pre>
<p>我对编程很陌生,所以如果这是件蠢事我很抱歉。提前感谢您的帮助!你知道吗</p>