# Koenig (26.09.2016 / 19:01)не я имел ввиду что все салоны построчно в одном цсв )
_endrju_, ты написал сохранить в csv, а зачем тебе каждый салон в отдельный файл? это же посути каждый салон одна строка, как в бд, в мускул csv можно импортировать
# Koenig (26.09.2016 / 19:01)не я имел ввиду что все салоны построчно в одном цсв )
_endrju_, ты написал сохранить в csv, а зачем тебе каждый салон в отдельный файл? это же посути каждый салон одна строка, как в бд, в мускул csv можно импортировать
_endrju_, кто тебе нарезал такое, тебе одноразовое задание дали, или сам парсинг обязателен, или результата хватит?
# Koenig (26.09.2016 / 19:08)гг ну задание одноразовое, вот самому интересно стало как спарсить даные) такой спорт для себя типа, канешно проще, сказать надо дать по шапке програмисту Васе, пусть сидит и прасит) но чистое любопытсво берет верх)
_endrju_, кто тебе нарезал такое, тебе одноразовое задание дали, или сам парсинг обязателен, или результата хватит?
_endrju_, ты же вроде какой то яп знаешь, на нем и напиши.
# Koenig (26.09.2016 / 19:18)ну я немного на пыхе когдато кодил чатики) но тех знаний вряд ли хватит)
_endrju_, ты же вроде какой то яп знаешь, на нем и напиши.
# _endrju_ (26.09.2016 / 19:26)А где логика? ) На пыхе хоть что-то кодил, а на питоне вообще пробел, как я понял ...
ну я немного на пыхе когдато кодил чатики) но тех знаний вряд ли хватит)
# ДоХтор (26.09.2016 / 19:28)не тут то было, допили таки етот парсер все работает)ыыы
А где логика? ) На пыхе хоть что-то кодил, а на питоне вообще пробел, как я понял ...
Почитай мануал по пыху, если кодил на нём, то и разберёшься быстрее, чем на другом ЯП.
rules = (
Rule(SgmlLinkExtractor(allow=('/result\?c\=203\&page\=')), follow=True),
Rule(SgmlLinkExtractor(allow=('\.html')), callback='parse_item'),
) Проблема была в том что я не екранировал точки, и другие символы) результат сейчас у меня в ексельке черновой файл с 4200 строками, парсилось все минут 3-4
Так тебе интерпретатор говорит модули заменить устаревшие на новые, лол.
ниже пркреплю код который заработал:
файл b2b_spider.py ето сам паук
from scrapy.contrib.spiders import CrawlSpider, Rule
from scrapy.contrib.linkextractors.sgml import SgmlLinkExtractor
from scrapy.contrib.loader.processor import TakeFirst
from scrapy.contrib.loader import XPathItemLoader
from scrapy.selector import HtmlXPathSelector
from b2b.items import OrphanageItem
class OrphanLoader(XPathItemLoader):
default_output_processor = TakeFirst()
class b2bSpider(CrawlSpider):
name = "b2b"
allowed_domains = ["b2binform.ru"]
start_urls = ["http://b2binform.ru/result?c=203&page=1"]
rules = (
Rule(SgmlLinkExtractor(allow=('/result\?c\=203\&page\=')), follow=True),
Rule(SgmlLinkExtractor(allow=('\.html')), callback='parse_item'),
)
def parse_item(self, response):
hxs = HtmlXPathSelector(response)
l = OrphanLoader(OrphanageItem(), hxs)
l.add_xpath('nazva', ".//*[@id='tabs-1']/div[4]/div[1]")
l.add_xpath('adres', ".//*[@id='tabs-1']/div[4]/div[2]")
l.add_xpath('email', ".//*[@id='tabs-1']/div[4]/div[3]")
l.add_xpath('tel', ".//*[@id='tabs-1']/div[4]/div[4]")
l.add_xpath('website', ".//*[@id='tabs-1']/div[4]/div[5]")
l.add_xpath('razdel', ".//*[@id='tabs-1']/div[4]/div[6]")
l.add_xpath('dodat2', ".//*[@id='tabs-1']/div[4]/div[7]")
l.add_xpath('dodat3', ".//*[@id='tabs-1']/div[4]/div[8]")
#l.add_value('url', response.url)
return l.load_item()