当前位置: 首页 > 编程笔记 >

Python使用Scrapy框架进行抓取

从光启
2023-03-14
本文向大家介绍Python使用Scrapy框架进行抓取,包括了Python使用Scrapy框架进行抓取的使用技巧和注意事项,需要的朋友参考一下

示例

首先,您必须建立一个新的Scrapy项目。输入要存储代码并运行的目录:

scrapy startproject projectName

要刮擦,我们需要一只蜘蛛。蜘蛛定义了如何刮除某个站点。以下是蜘蛛的代码,该代码遵循指向StackOverflow上投票最高的问题的链接,并从每个页面中抓取一些数据(源):

import scrapy

class StackOverflowSpider(scrapy.Spider):
    name = 'stackoverflow'  # 每个蜘蛛都有一个唯一的名字
    start_urls = ['http://stackoverflow.com/questions?sort=votes']  # 解析从一组特定的URL开始

    def parse(self, response):  # 对于此生成器产生的每个请求,其响应都发送到parse_question
        for href in response.css('.question-summary h3 a::attr(href)'):  # 使用CSS选择器来查找问题网址以进行一些抓取工作 
            full_url = response.urljoin(href.extract())
            yield scrapy.Request(full_url, callback=self.parse_question)

    def parse_question(self, response): 
        yield {
            'title': response.css('h1 a::text').extract_first(),
            'votes': response.css('.question .vote-count-post::text').extract_first(),
            'body': response.css('.question .post-text').extract_first(),
            'tags': response.css('.question .post-tag::text').extract(),
            'link': response.url,
        }

将您的Spider类保存在projectName\spiders目录中。在这种情况下- projectName\spiders\stackoverflow_spider.py。

现在,您可以使用蜘蛛了。例如,尝试运行(在项目目录中):

scrapy crawl stackoverflow
           

 类似资料:
  • 主要内容:Scrapy下载安装,创建Scrapy爬虫项目,Scrapy爬虫工作流程,settings配置文件Scrapy 是一个基于 Twisted 实现的异步处理爬虫框架,该框架使用纯 Python 语言编写。Scrapy 框架应用广泛,常用于数据采集、网络监测,以及自动化测试等。 提示:Twisted 是一个基于事件驱动的网络引擎框架,同样采用 Python 实现。 Scrapy下载安装 Scrapy 支持常见的主流平台,比如 Linux、Mac、Windows 等,因此你可以很方便的安装它

  • 问题内容: 如何通过python Web抓取框架Scrapy利用代理支持? 问题答案: Scrapy是否可以与HTTP代理一起使用? 是。(从Scrapy 0.8开始)通过HTTP代理下载器中间件提供对HTTP代理的支持。请参阅。 使用代理的最简单方法是设置环境变量。如何完成取决于你的外壳。 如果你想使用https代理并访问https web,要设置环境变量,请遵循以下步骤:

  • 案例目标: 本节案例主要是通过Scrapy框架使用Selenium,以PhantomJS进行演示,爬取淘宝商品信息案例,并将信息存入数据库MongoDB中。 准备工作: 请确保PhantomJS和MongoDB都已安装号,并确保可以正常运行,安装好Scrapy、Selenium和PyMongod库。 ① 创建项目 首先新建项目,名为scrapyseleniumtest: scrapy startp

  • 2.1 Scrapy框架的命令介绍 Scrapy 命令 分为两种:全局命令 和 项目命令。 全局命令:在哪里都能使用。 项目命令:必须在爬虫项目里面才能使用。 全局命令 C:\Users\AOBO>scrapy -h Scrapy 1.2.1 - no active project 使用格式: scrapy <command> [options] [args] 可用的命令: bench

  • 问题内容: 免责声明:我在StackOverflow上看到过许多其他类似的帖子,并尝试以相同的方式进行操作,但是它们似乎在此网站上不起作用。 我正在使用Python-Scrapy从koovs.com获取数据。 但是,我无法获得动态生成的产品尺寸。具体来说,如果有人可以引导我从此链接的下拉菜单中获取“不可用”尺寸标签,我将不胜感激。 我可以静态获取尺寸列表,但这样做只能得到尺寸列表,但不能获得其中的

  • 本文向大家介绍实践Python的爬虫框架Scrapy来抓取豆瓣电影TOP250,包括了实践Python的爬虫框架Scrapy来抓取豆瓣电影TOP250的使用技巧和注意事项,需要的朋友参考一下 安装部署Scrapy 在安装Scrapy前首先需要确定的是已经安装好了Python(目前Scrapy支持Python2.5,Python2.6和Python2.7)。官方文档中介绍了三种方法进行安装,我采用的