Donc, fondamentalement, je suis en train d'explorer une page avec un ensemble de catégories, gratter les noms de chaque catégorie, suivre un sous-lien associé à chaque catégorie à une page avec un ensemble de sous-catégories, gratter leur noms, puis suivez chaque sous-catégorie à leur page associée et récupérer les données de texte. A la fin, je veux sortir un fichier JSON formaté un peu comme:Comment parcourir récursivement les sous-pages avec Scrapy
- Catégorie 1 Nom
- Sous-catégorie 1 Nom
- données de ce nom la page de sous-catégorie
- Sous-catégorie n
- des données de cette page
- Sous-catégorie 1 Nom
- Catégorie nom n
- Sous-catégorie 1 Nom
- données de la page de la sous-catégorie n
- Sous-catégorie 1 Nom
etc.
Finalement, je veux être en mesure d'utiliser ces données avec ElasticSearch
J'ai à peine une expérience avec Scrapy et c'est ce que j'ai jusqu'à présent (qu'effleurer les noms des catégories de la première page, je ne sais pas ce que à faire à partir d'ici) ... De mes recherches, je crois que je dois utiliser un CrawlSpider mais je ne suis pas sûr de ce que cela implique. J'ai également été suggéré d'utiliser BeautifulSoup. Toute aide serait grandement appréciée.
class randomSpider(scrapy.Spider):
name = "helpme"
allowed_domains = ["example.com"]
start_urls = ['http://example.com/categories',]
def parse(self, response):
for i in response.css('div.CategoryTreeSection'):
yield {
'categories': i.css('a::text').extract_first()
}
si vous le pouvez, donnez-nous l'adresse du site web – parik