0

对于一个学校项目,我们需要抓取一个“求职”网站并将其存储在数据库中,然后将这些个人资料与正在搜索人员的公司进行匹配。

在这个特定站点上,我需要抓取的页面的所有 url 都在 1 个 div 中(每页有 10 个链接),该 div 称为“primaryResults”,其中有 10 个。

使用 beautifulsoup,我希望首先通过遍历 url 中的页码来抓取数组中的所有链接,直到弹出 404 或类似的东西。

然后浏览这些页面中的每一个,并将每个页面中我需要的信息存储到一个数组中,最后将其发送到我的数据库。

现在我陷入了从 ID = 'primaryResults' div 收集 10 个链接的部分。

我将如何将它放入我的 Python 中,以使这个将所有 10 个 url 存储到一个数组中?到目前为止,我已经尝试过:

import urllib2
from BeautifulSoup import BeautifulSoup

opener = urllib2.build_opener()
opener.addheaders = [("User-Agent", "Mozilla/5.0")]

url = ("http://jobsearch.monsterboard.nl/browse/")

content = opener.open(url).read()
soup = BeautifulSoup(content)

soup.find(id="primaryResults")
print soup.find_all('a')

但这只会给出一个错误:

Traceback (most recent call last):

print soup.find_all('a')
TypeError: 'NoneType' object is not callable

有人可以帮我吗?谢谢 :)

4

1 回答 1

2

这是获取您提到的 URL 中所有链接的答案

from bs4 import BeautifulSoup
import urllib2
url="http://jobsearch.monsterboard.nl/browse/"
page=urllib2.urlopen(url)
soup = BeautifulSoup(page.read())
jobs=soup.findAll('a',{'class':'slJobTitle'})
for eachjob in jobs:
 print eachjob['href']  

希望它是清晰和有帮助的。

于 2013-10-07T19:09:21.867 回答