2013-10-06 4 views
0

Для школьного проекта нам нужно очистить сайт поиска работы и сохранить его в БД, а затем сопоставить эти профили с компаниями, которые ищут людей.BeautifulSoup4 - Все ссылки в пределах 1 div на нескольких страницах

На этом конкретном сайте все URL-адреса, которые мне нужно очистить, находятся в 1 div (с 10 ссылками на страницу), div называется «primaryResults», в котором есть 10.

С beautifulsoup Я хочу сначала очистить все ссылки в массиве, перейдя по номеру страницы в URL-адресе, пока не появится 404 или что-то подобное.

Затем пройдите через каждую из этих страниц и сохраните информацию, которая мне нужна с каждой страницы, в массив и, наконец, отправьте ее в мою БД.

Теперь я застреваю в той части, где я собираю 10 ссылок из div ID = 'primaryResults'.

Как я могу поместить это в свой 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 

Может кто-то пожалуйста, помогите мне? Спасибо :)

+2

i think BeautifulSoup4 is: 'from bs4 import BeautifulSoup' –

+1

Дает мне ошибку, что он не может найти этот модуль. Это только заставило меня понять, что easy_install не установил V4, но V3, моя проблема теперь решена. Благодаря :) – rockyl

ответ

1

Вот ответ, чтобы получить все ссылки, которые находятся в 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'] 

Надеется, что это понятно и полезно.

Смежные вопросы