[英]Href values are not being returned
I am trying to extract the url's for each restaurant from this page and I have written a python script for the same: 我正在尝试从此页面提取每个餐厅的网址,并且我为此编写了python脚本:
import time
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
browser = webdriver.Firefox()
browser.get("http://www.delyver.com/Partners/partner/HSR%20Layout,%20Bengaluru,%20Karnataka,%20India/12.9081357/77.64760799999999")
time.sleep(1)
elem = browser.find_element_by_tag_name("body")
no_of_pagedowns = 40
while no_of_pagedowns:
elem.send_keys(Keys.PAGE_DOWN)
time.sleep(0.2)
no_of_pagedowns-=1
post1 = browser.find_elements_by_css_selector("Parwrsp.Parwrsp-Ado")
for post in post1:
print post.get('href')
When i run the script, the browser window opens and i maximize its window size to obtain focus and it automatically scrolls down. 当我运行脚本时,浏览器窗口打开,并且我最大化其窗口大小以获取焦点,并且它自动向下滚动。 But nothing gets printed.
但是什么也没印出来。 I implemented selenium following this link.
我在此链接后实现了硒。
What am i doing wrong? 我究竟做错了什么?
Your current CSS selector would not match any element since Parwrsp
is a class. 您当前的CSS选择器将不匹配任何元素,因为
Parwrsp
是一个类。
If you want to match multiple classes, write the selector this way: 如果要匹配多个类,请按以下方式编写选择器:
.Parwrsp.Parwrsp-Ado
And, there is no get()
method on a WebElement
instance, you meant to use get_attribute()
: 而且,
WebElement
实例上没有get()
方法,您打算使用get_attribute()
:
posts = browser.find_elements_by_css_selector(".Parwrsp.Parwrsp-Ado")
for post in posts:
print post.get_attribute('href')
Proof of the above making sense: 以上证明合情合理:
>>> from selenium import webdriver
>>>
>>> browser = webdriver.Firefox()
>>> browser.get("http://www.delyver.com/Partners/partner/HSR%20Layout,%20Bengaluru,%20Karnataka,%20India/12.9081357/77.64760799999999")
>>> for post in browser.find_elements_by_css_selector(".Parwrsp.Parwrsp-Ado"):
... print post.get_attribute('href')
...
http://www.delyver.com/Partners/partnerdetailsview/947/Purnabramha,-HSR
http://www.delyver.com/Partners/partnerdetailsview/916/Moti-Mahal-Deluxe,-HSR-Layout
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.