我一直在尝试使用'嵌套循环'和Python的Selenium获得具有相同类的多个元素。
使用的DataFrame有一列显示URL,所以我使用这一列是为了连接'driver'
for i, url in enumerate(df['naver_store_url']):
driver.get(url+'/review/visitor')
#try
all_elements= driver.find_elements(by=By.CLASS_NAME, value = "WoYOw")
for comment in all_elements:
default_comment += comment.text +'/'
review_text_list.append(default_comment)
代码修改如下:
try:
search_review = driver.find_elements(by=By.CLASS_NAME, value= "WoYOw")
for comment in search_review:
x = comment.get_attribute('innerText')
default_comment = default_comment +'/' + x
comment_house.append(default_comment)
即使元素有字符,旧代码也可以返回空字符串。这是因为该元素没有text属性,其值被设置为不同的属性。
所以,我修改了一段代码如下:.get_attribute (' innerText"实现)
*如果你有更好的方法请告诉我:)