Maison > Article > développement back-end > Comment utiliser Scrapy pour explorer les livres Douban et leurs notes et commentaires ?
Avec le développement d'Internet, les gens comptent de plus en plus sur Internet pour obtenir des informations. Pour les amateurs de livres, Douban Books est devenu une plateforme indispensable. En outre, Douban Books propose également une multitude d'évaluations et de critiques de livres, permettant aux lecteurs de comprendre un livre de manière plus complète. Cependant, obtenir ces informations manuellement revient à chercher une aiguille dans une botte de foin. À ce stade, nous pouvons utiliser l'outil Scrapy pour explorer les données.
Scrapy est un framework de robot d'exploration de sites Web open source basé sur Python qui nous aide à extraire efficacement les données des sites Web. Dans cet article, je vais me concentrer sur les étapes et présenter en détail comment utiliser Scrapy pour explorer les livres Douban ainsi que leurs notes et commentaires.
Première étape : Installer Scrapy
Tout d'abord, vous devez installer Scrapy sur votre ordinateur. Si vous avez installé pip (outil de gestion de packages Python), il vous suffit de saisir la commande suivante dans le terminal ou la ligne de commande :
pip install scrapy
De cette façon, Scrapy sera installé sur votre ordinateur. Si une erreur ou un avertissement se produit, il est recommandé d'effectuer les ajustements appropriés en fonction des invites.
Étape 2 : Créer un nouveau projet Scrapy
Ensuite, nous devons entrer la commande suivante dans le terminal ou la ligne de commande pour créer un nouveau projet Scrapy :
scrapy startproject douban#🎜 🎜#Cette commande créera un dossier nommé douban dans le répertoire courant, qui contient les fichiers de base et la structure de répertoires de Scrapy. Étape 3 : Écrire un programme d'exploration Dans Scrapy, nous devons écrire un programme d'exploration pour indiquer à Scrapy comment extraire les données du site Web. Par conséquent, nous devons créer un nouveau fichier nommé
douban_spider.py
et écrire le code suivant : import scrapy class DoubanSpider(scrapy.Spider): name = 'douban' allowed_domains = ['book.douban.com'] start_urls = ['https://book.douban.com/top250'] def parse(self, response): selector = scrapy.Selector(response) books = selector.xpath('//tr[@class="item"]') for book in books: title = book.xpath('td[2]/div[1]/a/@title').extract_first() author = book.xpath('td[2]/div[1]/span[1]/text()').extract_first() score = book.xpath('td[2]/div[2]/span[@class="rating_nums"]/text()').extract_first() comment_count = book.xpath('td[2]/div[2]/span[@class="pl"]/text()').extract_first() comment_count = comment_count.strip('()') yield {'title': title, 'author': author, 'score': score, 'comment_count': comment_count}
douban_spider.py
的文件,并编写如下代码:scrapy crawl douban -o result.json
上面的代码实现了两个功能:
在这个程序中,我们首先需要定义一个 DoubanSpider
类,并指定爬虫的名称、允许爬虫访问的域名和起始 URL。在 parse
方法中,我们通过 scrapy.Selector
对象进行 HTML 页面解析,并使用 XPath 表达式获取书籍的相关信息。
获取数据后,我们使用 yield
关键字将数据以字典的形式返回。这里的 yield
关键字的作用是将函数变成一个生成器,实现一次返回一个数据的效果。在 Scrapy 中,我们可以通过定义生成器的方式,实现对网站数据的高效抓取。
第四步:运行爬虫程序
在编写完爬虫程序后,我们需要在终端或命令行中运行以下代码来启动爬虫程序:
rrreee这个指令的作用是启动名为 douban
Le code ci-dessus implémente deux fonctions :
Dans ce programme, nous devons d'abord définir une classe DoubanSpider
et spécifier le nom du robot, le nom de domaine et l'URL de départ auxquels le robot est autorisé pour accéder. Dans la méthode parse
, nous analysons la page HTML via l'objet scrapy.Selector
et utilisons des expressions XPath pour obtenir des informations pertinentes sur le livre.
Après avoir obtenu les données, nous utilisons le mot-clé yield
pour renvoyer les données sous forme de dictionnaire. Le mot-clé yield
est utilisé ici pour transformer la fonction en générateur afin d'obtenir l'effet de renvoyer une donnée à la fois. Dans Scrapy, nous pouvons réaliser une exploration efficace des données de sites Web en définissant des générateurs.
douban
et de sortir les données analysées dans le fichier result.json au format JSON. #🎜🎜##🎜🎜#Grâce aux quatre étapes ci-dessus, nous pouvons explorer avec succès les livres Douban, leurs notes et évaluer les informations. Bien sûr, si vous avez besoin d'améliorer encore l'efficacité et la stabilité de votre programme d'exploration, vous devrez procéder à d'autres optimisations et ajustements. Par exemple : réglage du délai, prévention du mécanisme anti-exploration, etc. #🎜🎜##🎜🎜#En bref, utiliser Scrapy pour explorer les livres Douban, leurs notes et les informations de révision est une tâche relativement simple et intéressante. Si vous êtes intéressé par l'exploration de données et la programmation Python, vous pouvez essayer davantage l'exploration de données à partir d'autres sites Web pour améliorer vos compétences en programmation. #🎜🎜#Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!