fbpx

Почему не работает парсинг?

264 просмотра
0
0 Комментариев

Уважаемые, всю голову сломал. Вдруг в BeautifulSoup перестал работать парсинг сайта. Я решил, что это знак и переписал код под новый для меня lxml, но и он не находит нужного. Грешил на то, что поломали html, пробовал soupparser, но это ничего не даёт. Просто выдаётся пустой список.

Нужно: для начала — текст подписи к tumbnail (в тегах

)

import urllib
import lxml.html.soupparser
 
url = 'http://www.australiangeographic.com.au/journal/wallpaper'
 
html = urllib.urlopen(url).read()
root = lxml.html.soupparser.fromstring(url)
print root.xpath(
        '/html/body/form/div[4]/div[2]/div[2]/table/tbody/tr/td/div/p[2]/')

Пробовал ещё искать //*[@id="content"]/table/tbody/tr[1]/td[1]/div/p[2]/ с тем же результатом

Что я тут делаю не так? Или это сайта баг?


Добавить комментарий

1 Ответы

Python Опубликовано 25.06.2019
0

import urllib
import lxml.html
 
url = 'http://www.australiangeographic.com.au/journal/wallpaper'
 
html = urllib.urlopen(url).read()
doc = lxml.html.document_fromstring(html)
print doc.xpath('/html/body/form/div[4]/div[2]/div[2]/table/tr/td/div/p[2]')

Вы наверное копировали xpath из браузера? Браузеры добавляют в таблицу tbody, потому что так положено, а в коде этого тега нету

Добавить комментарий
Напишите свой ответ на данный вопрос.
Scroll Up