[英]TypeError : WebElement is not iterable
在我的Python腳本中,我試圖刮擦一個Twitter頁面(最多5個滾動),但是我的腳本拋出TypeError
聲明WebElements
不可迭代。 任何解決此問題的方法。
import time
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
path_chromedriver = '/Users/SubrataMohanty/Desktop/chromedriver'
browser = webdriver.Chrome(path_chromedriver)
base_url = u'https://twitter.com/search?q='
query = u'%40sachin_rt'
url = base_url + query
browser.get(url)
time.sleep(1)
body = browser.find_element_by_tag_name('body')
for _ in range(5) :
body.send_keys(Keys.PAGE_DOWN)
time.sleep(0.2)
tweets = browser.find_element_by_class_name('tweet-text')
for tweet in tweets :
print(tweet.text)
錯誤:
abhijeet-mohanty-2:Desktop SubrataMohanty$ python tweet_scraper.py
Traceback (most recent call last):
File "tweet_scraper.py", line 23, in <module>
for tweet in tweets :
TypeError: 'WebElement' object is not iterable
find_element_by_class_name()
返回單個元素 。 您打算按類名稱查找多個元素-使用find_elements_by_class_name()
方法(注意s
):
tweets = browser.find_elements_by_class_name('tweet-text')
# HERE^
for tweet in tweets :
print(tweet.text)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.