У меня возникают проблемы, пытаясь соскрести данные из таблицы в URL:Python выскабливание XPath не работает с конкретными сайтами/таблицами
http://economia.uol.com.br/cotacoes/bolsas/indx-bovespa/?intraday&size=600
Это относится к внутридневным данным рынка. Основываясь на предыдущих примерах и теги XPATH предоставляемые поджигатель, я написал код, приведенный ниже, но оба tr_nodes и возвращаемые td_content пустые списки:
import urllib2
from lxml import etree
uol = urllib2.urlopen("http://economia.uol.com.br/cotacoes/bolsas/indx-bovespa/?intraday&size=600")
t = uol.read()
html = etree.HTML(t)
tr_nodes = html.xpath(".//*[@id='main']/table/tbody/tr")
td_content = [[td.text for td in tr.xpath('td')] for tr in tr_nodes]
Я прочитал вопрос ниже от переполнения стека:
python scraping reuters site...bad xpath?
и попытался ее решением, приспособленное к моим потребностям:
import lxml
import lxml.html
import lxml.etree
url = 'http://economia.uol.com.br/cotacoes/bolsas/indx-bovespa/?intraday&size=600'
content = lxml.html.parse(url)
item = content.xpath(".//*[@id='main']/table/tbody/tr/td")
ticker = [thing.text for thing in item]
print ticker
произошла та же проблема. Фактически, когда я попытался написать весь контент url в текстовый файл, я не смог найти узлы td, которые я хотел очистить. Может быть, это динамическая таблица/форма, которую нельзя скрестить с библиотеками, которые я использовал, или это просто мое невежество? Заранее спасибо