def parse(self, response): global count html = response.text movies_name = re.findall(r'class="m-b-sm">(.*?)</h2>',html)[0] rating = re.findall(r'm-b-n-sm">\n *(.*?)</p>',html) plot_summary = re.findall(r'<p da
时间: 2023-07-16 09:11:41 浏览: 124
ta-qa="plot-summary" class="">(.*?)</p>',html)[0] # 爬取电影名称、评分、剧情简介 # 将获取的数据存储到字典中 movie_dict = {} movie_dict['name'] = movies_name movie_dict['rating'] = rating[0] if rating else None movie_dict['plot_summary'] = plot_summary # 将字典转换为JSON格式 movie_json = json.dumps(movie_dict) # 将JSON数据写入文件中 with open('movie.json', 'a', encoding='utf-8') as f: f.write(movie_json + '\n') # 计数器加一 count += 1 # 打印当前爬取的电影数量 print('已爬取{}部电影'.format(count)) # 获取下一页的链接 next_page_link = re.findall(r'<a class="next-page" href="(.*?)" >下一页</a>',html) if next_page_link: # 如果存在下一页,则继续爬取 yield scrapy.Request(url=next_page_link[0], callback=self.parse) 以上是一个简单的爬虫程序,能够爬取豆瓣电影中的电影名称、评分、剧情简介,并将爬取的数据存储到一个JSON文件中。程序通过正则表达式从HTML源代码中提取所需数据,并使用Scrapy框架进行网页爬取和数据存储。
阅读全文