0

リンクのリストがあり、ランダムにリンクをクリックしたいとしましょう:

<div id="divA">
   <a> first link </a>
   <a> second link </a>
   ...
</div>

それは最も賢明な方法ではありません(より良い解決策があれば教えてください)が、私が現在行っていることは(大まかに)次のとおりです。

l = []
for i in range(numOfLinks):
    xpath = '//div[@id="divA"]/a[%d]'%i
    txt = sel.getText(xpath)
    l.append(xpath, txt)

xpath,linkName = random.choice(l)
sel.click(xpath)

このソリューションの主な問題は、セレンに多くのリクエストを送信することです。私の質問は、これらすべてのリクエストをバッファに保存して一度に送信する方法はありますか?

4

1 に答える 1

0

テキストを何かに使用していますか?

numOfLinks = sel.get_xpath_count('//div[@id="divA"]/a')
random.randrange(1,numOfLinks)
sel.click('//div[@id="divA"]/a[%d]'%random.randrange(1,numOfLinks))

上記のコードは、毎回リンクのテキストを取得することなく、常にランダムなリンクをクリックします。

于 2010-01-01T14:53:29.223 に答える