Если я правильно анализирую ваш вопрос, один из способов сделать это (я оставлю проверку ошибок в качестве упражнения для вас; также код не был выполнен) будет выглядеть так:
# Loop count times; "_" effectively means ignore the counter
for _ in range(count):
# Get an array of <a> elements,
# then get the (position-1)th
# then get the text of the 'href' tag
next_url = soup.find_all('a')[position-1]['href']
# And repeat for the URL found there
html = urlopen(next_url, context=ctx).read()
soup = BeautifulSoup(html, "html.parser")
# Finally, print out the (position-1)th URL on the last page
print(soup.find_all('a')[position-1]['href'])
Of Конечно, если на странице недостаточно ссылок, или есть теги <a>
без href
, или URL-адрес href
искажен, программа выполнит sh.