Href值未返回

Bluesir9

我正在尝试从此页面提取每个餐厅的网址,并且我为此编写了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')  

当我运行脚本时,浏览器窗口打开,并且我最大化其窗口大小以获得焦点,并且它自动向下滚动。但是什么也没印出来。我在链接后实现了硒

我究竟做错了什么?

ec

您的当前CSS选择器不匹配任何元素,因为它Parwrsp是一个类。

如果要匹配多个类,请按以下方式编写选择器:

.Parwrsp.Parwrsp-Ado

而且,实例get()没有WebElement要使用的方法get_attribute()

posts = browser.find_elements_by_css_selector(".Parwrsp.Parwrsp-Ado")
for post in posts:
    print post.get_attribute('href')

以上证明合情合理:

>>> 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

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章