Je commence par scrapy, et j'ai d'abord un vrai problème. Il télécharge des images. Donc c'est mon araignée.Téléchargement de photos avec scrapy
from scrapy.contrib.spiders import CrawlSpider, Rule
from scrapy.selector import HtmlXPathSelector
from scrapy.contrib.linkextractors.sgml import SgmlLinkExtractor
from example.items import ProductItem
from scrapy.utils.response import get_base_url
import re
class ProductSpider(CrawlSpider):
name = "product"
allowed_domains = ["domain.com"]
start_urls = [
"http://www.domain.com/category/supplies/accessories.do"
]
def parse(self, response):
hxs = HtmlXPathSelector(response)
items = []
sites = hxs.select('//td[@class="thumbtext"]')
number = 0
for site in sites:
item = ProductItem()
xpath = '//div[@class="thumb"]/img/@src'
item['image_urls'] = site.select(xpath).extract()[number]
item['image_urls'] = 'http://www.domain.com' + item['image_urls']
items.append(item)
number = number + 1
return items
Quand je cite ITEM_PIPELINES
et IMAGES_STORE
à settings.py
cette façon, j'obtenir l'URL correcte pour l'image que je veux télécharger (copier collé dans le navigateur pour l'enregistrement).
Mais quand je CITATION ceux que je reçois l'erreur suivante:
raise ValueError('Missing scheme in request url: %s' % self._url')
exceptions.ValueError: Missing scheme in request url:h
et je ne peux pas télécharger mes photos.
J'ai cherché toute la journée et je n'ai rien trouvé d'utile.
avez-vous un pipeline pour traiter les urls? avez-vous enregistré votre pipeline dans settings.py? http://doc.scrapy.org/en/latest/topics/images.html, est une excellente référence. avez-vous les autorisations appropriées pour écrire sur le chemin IMAGE_STORE? – dm03514
oui j'ai tout fait comme il est dit, en fait j'ai utilisé cette référence mais toujours ... non – iblazevic