Scrapy配置使用

news2024/9/21 4:25:25

前人之述备矣 

教程:Python虚拟环境+Scrapy+PyCharm 使用实例 - 知乎

注意:是cmd不是powershell,两者还是有区别的。 因为是本地的虚拟环境,用cmd激活环境并且安装相关的scrapy包,如果用powershell,在pycharm中显示不了安装的包。

PowerShell 与 cmd 有什么不同? - 知乎

如何快速打开cmd或powershell?
1.win+R打开“运行”,然后输入cmd或powershell,回车进入;
2.可在打开的文件夹内,直接在地址栏输入cmd或powershell,回车进入;
3.在Windows的搜索应用中输入cmd或powershell,回车进入。

安装好之后检查:

 正式开始:

scrapy startproject CodeSpider //创建一个项目

 创建成功如下:

文件结构:

 选择抓取页面:

scrapy genspider blogs news.cnblogs.com

 抓取模板,可以按照自己的需求修改模板。

 需求分析:

采集静态数据,大部分网站都是动态的。

典型的分页数据:

采集详细信息:将所有页面采集下来-->详细信息:发布时间,内容,评论等

抓取所有文章的url.

 scrapy调试:

  • 在cmd中启动命令,不可调试:scrapy crawl blogs(name)

  •  创建新的脚本进行调试:

在根目录文件夹中重新新建一个main文件,只要继承了crawl文件中的scrapy.Spider就可以

 执行:

 

 可以在断点之后看见response的信息,self和response:

xpath解析:

独立的语法,与各种库不同,可以兼容各种库。

  • xpath简介:学爬虫利器XPath,看这一篇就够了 - 知乎

XPath,全称 XML Path Language,即 XML 路径语言,它是一门在XML文档中查找信息的语言。XPath 最初设计是用来搜寻XML文档的,但是它同样适用于 HTML 文档的搜索。 

 

 使用xpath提取想要的值:

 response参数:使用xpath就可以提取

 通过复制xpath:

缺点:如果数据刷新,无法提取到正确数据。

// *[ @ id = "entry_740378"] / div[2] / h2 / a

提取出所有满足条件的: 

使用特殊的设置,巧妙的xpath

使用css选择器提取:

没有xpath强大,使用css样式选择,解析出合适的内容:如h2

 

 

    url = response.css('div#news_list h2 a::attr(href)').extract()

爬虫抓取过程:

使用parse,做了很多处理,获取url.

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/440908.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【MySQL】如何使用MySQL锁(全局锁、表级锁、行级锁)?

文章目录 概述一、全局锁介绍语法特点 二、表级锁介绍表锁元数据锁意向锁 三、行级锁介绍行锁间隙锁&临键锁 概述 锁是计算机协调多个进程或线程并发访问某一资源的机制。在数据库中,除传统的计算资源(CPU、RAM、I/O)的争用以外&#xf…

神经网络之反向传播算法(自适应矩估计算法Adam)

文章目录 自适应矩估计算法(Adam)1、算法原理2、算法实现2.1 训练过程2.2 测试过程及结果 3、参考源码及数据集 自适应矩估计算法(Adam) 自适应矩估计算法从其本质上看可以视作是带有动量项的均方根反向传播算法,一方…

jmeter -- WebService接口压测

WebService简介 webService 一种使用http传输SOAP协议数据的远程调用技术。 SOAP协议 soap请求是HTTP POST的一个专用版本,遵循一种特殊的xml消息格格式。Content-type需设置为: text/xml 与HTTP比较 接口中实现的方法和要求参数一目了然不用担心大小写问题不用担心…

matlab中计算标准差std函数

标准差 标准差(Standard Deviation)是离均差平方的算术平均数(即:方差)的算术平方根。 标准差是方差的算术平方根。标准差能反映一个数据集的离散程度。平均数相同的两组数据,标准差未必相同。 计算公式&…

HCIP之路VLAN

VLAN---虚拟局域网 垃圾流量问题 网络安全问题 VLAN特点 一个vlan就是一个广播域,不同vlan内部的数据无法进行跨广播域通讯 vlan的划分不受地域限制 vlan的实现 主机的网卡一般只能发送和接收无标记帧(Untagged Frame)。Tagged Frame --- 标…

【Linux】生产者消费者模型——阻塞队列BlockQueue

文章目录 一、生产者消费者模型生产消费理解生产消费关系 二、基于blockqueue的生产和消费模型单生产单消费计算随机数计算器任务Task存储任务 多生产多消费 三、总结 一、生产者消费者模型 生产消费理解 引入:举个例子,比如我们学生想买东西&#xff…

Tomcat服务器

1.服务器概念: 服务器是一个容器,可以将任何资源放到服务器中,服务器启动后 外部用户可以通过 ip地址:端口/资源路径 来访问服务器容器内对应的资源 你可以将服务器理解为一个共享文件夹,只要服务器启动了,大家都可…

人社LEAF平台架构及其主要技术架构特点

人社LEAF平台架构及其主要技术架构特点https://wheart.cn/so/home?mindex&id31525d77-de79-11ed-96fa-52540016e6ac 在前面的系列文章中介绍了社会保险管理信息系统核心平台三版(以下简称核三)的技术亮点,这些技术亮点主要是由核三的技…

WebGIS:前端:给出地理范围计算出地图瓦片的行列号

目录 前端代码实现 根据xml配置文件计算出行列号 1、xml配置文件信息样例 2、代码实现 运用到的知识 该文档是根据本人做的项目进行的总结,可能存在知识不准确,仅做参考; 前端代码实现 根据提供一个瓦片服务地址,解析服务的…

【Linux】Linux入门手册

入门Linux Linux的目录结构Linux的远程操作Xshell 软件Xftp 软件 Linux 基础命令vi 和 vimLinux中的用户管理Linux中的组管理Linux中的权限管理文件或者目录中的三种权限修改文件或者目录的权限使用数字的方式修改文件或者目录的权限 Linux中的帮助命令Linux目录相关命令Linux查…

关于数制及其转换

关于数制及其转换 从1除以10谈起 十进制计算 1 10 0.1 商是有限小数 用二进制计算 是无限循环小数: 1 1010 0.00011001100110011…… 1/10 是无法用二进制小数精确表示的。十进制小数转换成二进制有可能无限循环。 十进制数0.1转换成二进制为0.00011000…

C++程序设计—类与对象

目录 1、类和对象的概念 2、面向对象程序设计的特点 3、类和对象的区别 4、成员运行算符 (1)(.)点运算符 (2)(->)箭头运算符 5、类的声明形式 (1)…

DataBinding 大坑总结(网上我暂时搜不到解决方法)

在使用多Module中使用DataBinding会引发一些奇怪的问题,最近好好的腾出时间来折腾这些奇怪的问题: 1:如果当Module启动DataBinding重启AS启动报错的话,就启用允许多行代码 android { defaultConfig {multiDexEnabled true} } de…

设计模式:UML中的类图(6种关系)

一.UML图介绍 统一建模语言是用来设计软件的可视化建模语言。它的特点是简单、统一、图形化、能表达软件设计中的动态与静态信息。 UML 从目标系统的不同角度出发,定义了用例图、类图、对象图、状态图、活动图、时序图、协作图、构件图、部署图等 9 种图。 二.类图…

apkanalyzer-classpath.jar 中没有.class 文件

apkanalyzer-classpath.jar 中没有.class 文件,apkanalyzer-classpath.jar 包目录下,只有 MANIFEST.MF 文件,如下截图: 而 apkanalyzer.jar 下,有很多 class 文件,其中,BinaryXmlParser.class 就…

P80-MySQL

//启动mysql,我的名字是mysql80 net start mysql80//我的端口号为3307 mysql -hlocalhost -P3307 -uroot -p一、课程介绍 什么是数据库? 数据库:DataBase(DB),是存储和管理数据的仓库。

ChatGPT账号被封怎么办?进来看看解决办法

部分内容整理自网络,侵删 最近有很多同学说自己的chatgpt账号被封了。仔细研究了一下大部分被封账号,发现主要有这些个原因: 1,被封的账号可能是用程序批量注册的,也就是一台机器用一个IP在短时间内注册了大量的账号 …

JSON Web Tokens (JWT) — the only explanation you will ever need

本文摘抄自 Ariel Weinberger 博客 JSON Web Tokens (JWT) — the only explanation you will ever need | by Ariel Weinberger | Medium JSON Web Tokens (JWT) — the only explanation you will ever need JSON Web Tokens are changing the world for the better. Acting …

java程序员学前端-Vue2篇

Vue 2 1. Vue 基础 1) 环境准备 安装脚手架 npm install -g vue/cli-g 参数表示全局安装,这样在任意目录都可以使用 vue 脚本创建项目 创建项目 vue ui使用图形向导来创建 vue 项目,如下图,输入项目名 选择手动配置项目 添加 vue rou…

【Vue基础】element快速入门

一、知识点整理 1、安装Element UI组件库,在当前目录下,在命令行执行指令: npm install element -ui2.15.3 如果无法安装,执行以下指令: npm install --legacy-peer-deps element-ui --save 2、引入Element组件库 …