Гость
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / Re: Сортировка сгруппированных данных / 2 сообщений из 2, страница 1 из 1
06.03.2016, 13:37
    #39186856
Re: Сортировка сгруппированных данных
Добрый день!
Пытаюсь освоить Scrapy, путем адаптации найденного работоспособного примера под свои нужды.

Код: python
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
#! coding: utf-8
from scrapy.contrib.spiders import CrawlSpider, Rule
from scrapy.contrib.linkextractors import LinkExtractor
from scrapy.item import Item, Field
from scrapy.contrib.loader import XPathItemLoader
from scrapy.contrib.loader.processor import TakeFirst
from scrapy.selector import HtmlXPathSelector
#
#
class ScrapyTestItem(Item):
    title = Field()
    imagelink = Field()
    url = Field()
    price = Field()
    field_11 = Field()

class Test03Loader(XPathItemLoader):
    default_output_processor = TakeFirst()    
  
class ScrapyTestSpider(CrawlSpider):
    name = "test03"
    allowed_domains = ["pastelmebel.ru"]
    start_urls = ["http://pastelmebel.ru/shop/bedroom-furniture/bedroom-august/the-cabinet-wall-s-83-sfw1w-august-wenge/"]

    rules = (
        Rule(LinkExtractor(allow=('/bedroom-august/')), 
            callback='parse_item', follow=True),
    )

    def parse_item(self, response):
        hxs = HtmlXPathSelector(response)
        l = Test03Loader(ScrapyTestItem(), hxs)

        l.add_xpath('title', "//h1[last()]/text()")
        l.add_xpath('imagelink', "//img[1]/@src")
        l.add_xpath('price', "//*[@class='itemOtherPricePrice number']/text()")  
        l.add_xpath('field_11', ".//*[@id='tab-sub-about-features']/table/tbody/tr[1]/td[2]/span") 
        l.add_value('url', response.url)

        return l.load_item()




Так вот, в итоговый вывод не попадает поле field_11, остальные (заголовок, цена, путь картинки) парсятся нормально.
Выражение для Xpath брал из FirePath - там все нормально, валидное.

Что еще может быть?
...
Рейтинг: 0 / 0
06.03.2016, 18:58
    #39186945
_Vasilisk_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Re: Сортировка сгруппированных данных
Точку убрать?Алексей_030212
Код: python
1.
l.add_xpath('field_11', ".//*[@id='tab-sub-about-features']/table/tbody/tr[1]/td[2]/span") 
...
Рейтинг: 0 / 0
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / Re: Сортировка сгруппированных данных / 2 сообщений из 2, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]