gpt4 book ai didi

python - selenium-webdriver:如何使用 for 循环查找元素

转载 作者:太空宇宙 更新时间:2023-11-03 14:22:50 24 4
gpt4 key购买 nike

我想获取所有链接和开始时间和结束时间一个页面,然后发送到函数(parse_detail)以废弃另一个信息但是我不知道怎么用selenium来for循环

这是我的代码并且有错误:

for site in sites:
exceptions.TypeError: 'WebElement' object is not iterable

请教我如何在 selenium 中像 scrapy 一样使用 for 循环。谢谢!

class ProductSpider(Spider):
name = "city20140808"
start_urls = ['http://wwwtt.tw/11']

def __init__(self):
self.driver = webdriver.Firefox()
dispatcher.connect(self.spider_closed, signals.spider_closed)

def parse(self, response):
self.driver.get(response.url)

item = CitytalkItem()
sites = self.driver.find_element_by_css_selector("div.body ")
for site in sites:
linkiwant = site.find_element_by_css_selector(".heading a")
start = site.find_element_by_css_selector("div.content p.m span.date")
end = site.find_element_by_css_selector("div.content p.m span.date")

item['link'] = linkiwant.get_attribute("href")
item['start_date'] = start.text
item['end_date'] = end.text
yield Request(url=item['link'], meta={'items':items}, callback=self.parse_detail)
def parse_detail(self,response):
item = response.meta['items']
........
yield item

最佳答案

您需要使用 find_elements_by_css_selector() 而不是返回单个元素的 find_element_by_css_selector() ,它返回一个元素列表。

关于python - selenium-webdriver:如何使用 for 循环查找元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25213994/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com