【发布时间】:2019-09-09 11:17:51
【问题描述】:
点击列表页面上的链接(随机) 看到内容3秒后 我想重复另一个随机点击。
查看一个帖子的内容,不是收藏目的,返回列表查看另一个帖子的内容...
这是一项重复性的任务。
下面的代码有效,但我似乎无法随意点击列表
from time import sleep
from selenium import webdriver
driver = webdriver.Chrome()
driver.implicitly_wait(10)
driver.get('/test')
list_of_links = driver.find_elements_by_xpath('//a[@class="re_href"]')
list_of_linktext = []
for link in list_of_links:
list_of_linktext.append(link.text)
for linktext in list_of_linktext:
element = driver.find_element_by_link_text(linktext)
driver.execute_script("arguments[0].click();", element)
sleep(3)
driver.back()
sleep(3)
html
<table>
<tbody>
<tr>
<td class="num">512</td>
<td class="thumb"><img src="test.jpg"></td>
<td class="subject">
<a href="/article/band/13538" id="re_href" class="re_href">Title</a>
</td>
<td class="writer"></td>
<td class="check"></td>
</tr>
<tr>
<td class="num">512</td>
<td class="thumb"><img src="test2.jpg"></td>
<td class="subject">
<a href="/article/band/14230" id="re_href" class="re_href">Title</a>
</td>
<td class="writer"></td>
<td class="check"></td>
</tr>
.
.
.
</tbody>
</table>
【问题讨论】:
-
它没有点击,因为我认为这个选择器:element = driver.find_element_by_link_text(linktext) 依赖于多个元素。
-
@SelçukAyhan 谢谢你。但我不太明白。
-
如果有两个元素的链接文本
Title这个代码是行不通的。 -
@SelçukAyhan 所以这段代码只是一个有效的链接。你能让多个链接工作吗?甚至是一个提示......
-
@soria :随机点击是什么意思?您要一个一个地点击每个链接吗?
标签: python selenium web-crawler