如何在python中抓取具有静态URL的网站

时间:2017-06-30 10:09:33

标签: php python web-crawler dynamic-url

我想抓取一个基于PHP的网站,它有一个搜索框,我们可以在该搜索框中输入一个数字,当我们点击提交按钮或点击输入但是URL没有改变时,它会根据输入的数字呈现结果。 就像每个结果显示foo.com/res_17.php一样,但是对于超过千条记录的爬网,记录应该可以通过唯一ID访问,例如foo.com/res_17.php?id=1001,foo.com/res_17.php ?id = 1002 - foo.com/res_17.php?id=3450这样我就可以使用while循环访问它们如何解决这个问题请帮忙。

1 个答案:

答案 0 :(得分:0)

我给了你一个我的剧本

from urllib.request import urlopen
from bs4 import BeautifulSoup
import re
html = urlopen("http://en.wikipedia.org/wiki/Andrew_Ng")
bsObj = BeautifulSoup(html)

for link in bsObj.find("div", {"id":"bodyContent"}).findAll("a",
            href=re.compile("^(/wiki/)((?!:).)*$")):
    if 'href' in link.attrs:
        print(link.attrs['href'])

输出显示为所有Andrew Ng Wikipedia的文章。