我想知道我是如何找到下一页链接的,下面给出了脚本
主div class =“abc”涵盖下一页链接
www.abc.com #base url
www.abc.com/options/latest/121?n=0
能够收集选项网址并从中获取详细信息。此页面包含下一页链接
<p> <a href="/options/latest/121?n=20">suivant »</a> </p>
我能够从中获取此链接及其详细信息,但无法从
收集下一页<p> <a href="/options/latest/121?n=20">suivant »</a> </p>
想要收集
<p> <a href="/options/latest/121?n=40">suivant »</a> </p>
想要到最后一页
答案 0 :(得分:1)
要从html页面获取下一个网址,您可以使用BeautifulSoup
:
import re
def get_next_url(soup):
for div in soup.find_all('div', 'abc'):
a = div.find('a', href=re.compile('^/options/latest/'),
text=re.compile('suivant'))
if a is not None:
return a['href']
切换到下一页:
from urllib2 import urlopen
from bs4 import BeautifulSoup # $ pip install beautifulsoup4
link = '/first/page'
while link:
print(link)
page = urlopen('http://example.com' + link)
soup = BeautifulSoup(page, from_encoding=page.info().getparam('charset'))
link = get_next_url(soup)