2015-12-29 2 views
0

Я использую Scapy для очистки некоторых данных с сайта, и мне нужна помощь с помощью Xpath для выбора «данных» из следующего.Выбор с помощью Xpath в Scrapy

<span class="result_item"><span class="text3"><span class="header_text3">**data**</span><br /> 
    <a href="http://website.htm">**data**</a><br /> 
    **data**</span> <span class="phone_button_out"><span class="phone_button" style="margin-top: 0" 
    onclick="pageTracker._trackEvent('USDSearch','Call Now!F');phone_win.open('name','**data**',27101650,0)"> 
    Call Now!<br /> 
</span></span> 

Какие заявления я могу использовать для выбора необходимых данных? Надеюсь, это не глупый вопрос. Если это так, пожалуйста, укажите мне в правильном направлении.

+0

'' или '' отключен в предоставил html. PLS исправить опубликованный html. – parishodak

+0

@parishodak Это было скопировано и вставлено. Если бы я изменил это, это не был бы код, который я пытаюсь очистить. –

ответ

1

Есть несколько элементов данных, чтобы попасть в размещенный html. Если предположить, что <span class="result_item"> является родителем элементов, вы можете попробовать следующее:

Чтобы получить заголовок:

//span[@class='result_item']/span[@class='header_text3']/text() 

Чтобы получить якорь ссылки данные:

//span[@class='result_item']/a/text() 

Кроме того, чтобы помочь с XPaths, установите Firebug Addon в Firefox, а затем FirePath addon на Firebug. Указание на элементы даст вам автогенерируемые xpaths (хорошо для новичков, иногда требуется настройка xpath)

+0

Я совершенно новый. Почему «response.xpath ('// span [@ class =' ​​result_item ']/span [@ class =' ​​header_text3 ']/text()')" дает мне недопустимую синтаксическую ошибку в оболочке? –

+0

PLS, если это работает 'response.selector.xpath ('// span [@ class =' ​​result_item ']/span [@ class =' ​​header_text3 ']/text()')" ') .extract() '- упомянутая документация по скрипированию http://doc.scrapy.org/en/latest/topics/selectors.html – parishodak

+0

Это, к сожалению. –

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