Уведомления

Группа в Telegram: @pythonsu

#1 Сен. 5, 2015 20:16:40

hubble
Зарегистрирован: 2013-10-11
Сообщения: 21
Репутация: +  0  -
Профиль   Отправить e-mail  

Многостраничный парсинг

Есть код:

from lxml import html
def get_urls_from_page(url):
    result = []
    path = './/*[@class = "span10"]/div[1]/text()'
    for page in range(10):
        doc = html.parse(url + 'page')
        values = doc.xpath(path)
        for i in values:
            result.append(i)
    return result
headers = get_urls_from_page('http://msl.ua/ru/megalot/archive/page/')
for h in headers:
    print(h)
Парсится в цикле только первая страница. Подскажите, пожалуйста, что не правильно?

Офлайн

#2 Сен. 5, 2015 21:01:22

lobster
От:
Зарегистрирован: 2011-06-09
Сообщения: 82
Репутация: +  0  -
Профиль   Отправить e-mail  

Многостраничный парсинг

 doc = html.parse(url + 'page')
page видимо это переменная, попробуй убрать кавычки.
doc = html.parse(url + str(page))



Офлайн

#3 Сен. 5, 2015 21:02:49

mgnmaster
Зарегистрирован: 2015-09-03
Сообщения: 11
Репутация: +  0  -
Профиль   Отправить e-mail  

Многостраничный парсинг

from lxml import html
def get_urls_from_page(url):
    result = []
    path = './/*[@class = "span10"]/div[1]/text()'
    for page in range(10):
        doc = html.parse(url + str(page))
        values = doc.xpath(path)
        for i in values:
            result.append(i)
    return result
headers = get_urls_from_page('http://msl.ua/ru/megalot/archive/page/')
for h in headers:
    print(h)

lobster конечно переменная )

Отредактировано mgnmaster (Сен. 5, 2015 21:04:12)

Офлайн

#4 Сен. 5, 2015 21:56:06

hubble
Зарегистрирован: 2013-10-11
Сообщения: 21
Репутация: +  0  -
Профиль   Отправить e-mail  

Многостраничный парсинг

Спасибо.

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version