下一页链接需要找到python

时间:2014-04-13 10:13:34

标签: python html python-2.7

我想知道我是如何找到下一页链接的,下面给出了脚本

主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>

想要到最后一页

1 个答案:

答案 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)