【发布时间】:2019-04-23 14:45:23
【问题描述】:
我正在使用 selenium 和漂亮的汤来尝试滚动页面上的帖子。我试图使用下面的代码加载所有 503 帖子,但意识到页面没有滚动和加载。它在页脚有数字,可以单击并加载下一页。谁能建议如何从一页到另一页点击?我在下面包含了源代码。例如,如果我只想点击第 2 页,我会使用 css 选择器来查找元素吗?
代码:
soup = BeautifulSoup(driver.page_source)
emptLst=[]
for i in range(int(round(503/12))):
print(i)
driver.execute_script('window.scrollTo(0, document.body.scrollHeight);')
time.sleep(3)
源代码:
<section class="search-results-pagination-section">
<artdeco-pagination class="artdeco-pagination pv5">
<!---->
<ul class="artdeco-pagination__pages artdeco-pagination__pages--number">
<li class="artdeco-pagination__indicator artdeco-pagination__indicator--number active selected">
<span>1</span>
</li>
<li class="artdeco-pagination__indicator artdeco-pagination__indicator--number ">
<button aria-label="Page 2" data-ember-action="" data-ember-action-252="252">
<span>2</span>
</button>
</li>
<li class="artdeco-pagination__indicator artdeco-pagination__indicator--number ">
<button aria-label="Page 3" data-ember-action="" data-ember-action-255="255">
<span>3</span>
</button>
</li>
<li class="artdeco-pagination__indicator artdeco-pagination__indicator--number ">
<button aria-label="Page 4" data-ember-action="" data-ember-action-258="258">
<span>4</span>
</button>
</li>
<li class="artdeco-pagination__indicator artdeco-pagination__indicator--number ">
<button aria-label="Page 5" data-ember-action="" data-ember-action-261="261">
<span>5</span>
</button>
</li>
<li class="artdeco-pagination__indicator artdeco-pagination__indicator--number ">
<button aria-label="Page 6" data-ember-action="" data-ember-action-264="264">
<span>6</span>
</button>
</li>
<li class="artdeco-pagination__indicator artdeco-pagination__indicator--number ">
<button aria-label="Page 7" data-ember-action="" data-ember-action-267="267">
<span>7</span>
</button>
</li>
<li class="artdeco-pagination__indicator artdeco-pagination__indicator--number ">
<button aria-label="Page 8" data-ember-action="" data-ember-action-270="270">
<span>8</span>
</button>
</li>
<li class="artdeco-pagination__indicator artdeco-pagination__indicator--number">
<button data-ember-action="" data-ember-action-273="273">
<span>…</span>
</button>
</li>
<li class="artdeco-pagination__indicator artdeco-pagination__indicator--number ">
<button aria-label="Page 21" data-ember-action="" data-ember-action-276="276">
<span>21</span>
</button>
</li>
</ul>
<!----></artdeco-pagination>
</section>
【问题讨论】:
-
可以分享网址吗?
标签: selenium web-scraping beautifulsoup python-3.6