IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> JavaScript知识库 -> 通过scrapy命令行工具做网页分析 -> 正文阅读

[JavaScript知识库]通过scrapy命令行工具做网页分析

前言:

Scrapy是由python语言开发的一个快速、高效的web抓取框架,用于抓取web站点并从页面中提取结构化的数据,只需要实现少量的代码,就能够快速的抓取。它最吸引人的地方在于它是一个爬虫框架,任何人都可以根据自己的需求方便的修改。scrapy的创建和执行都需要在命令行下运行,也就意味着scrapy里面会有很多的命令需要在命令行下才能运行,今天我们就用过这些好用的命令,来对网址进行一下网页分析。

命令:scrapy view

>>> scrapy view url地址  

这个命令通过我们需要查看的网页,在命令下输入该网页的网址,scrapy会把这个网页自动保存成一个html并且会给我们自动打开呈现出来,现在有很多网页都是通过JavaScript的ajax加载的,所以我们经常请求后,显示不出我们需要的数据内容,我们可以通过view这个命令来查看网页内是否存在我们需要的数据。
在这里插入图片描述

从图中可以看出,通过view命令在加上网址,及能直接跳转到这个网页,这个网页里面显示的是什么内容,也就是网页能给我们请求返回什么响应的内容。

在这里插入图片描述

上图这个就是网页就没有给我显示全部的数据内容,这样就可以判断该网页是通过AJAX加载的,所以直接请求是没有我们需要的数据。

命令:scrapy shell

>>> scrapy shell url地址

通过这个命令在加上需要请求的网址,可以获取到该网址响应后的数据,而且可以通过scrapy shell内的命令,进行查看该网址请求后的各种信息,可以查看它的request和response的状态情况,还可以直接提取该网页的信息,

>>> request
>>> response

如图:

在这里插入图片描述

>>> response.text

还可以看到响应后的数据,如图:

在这里插入图片描述

scrapy还内置了3个解析工具,xpath,css选择器和re(正则表达式),而且这三个解析工具都支持在scrapy shell命令下执行,

>>> response.css('.mc>.mc_list.clearfix .tit>h3>a::text')[0].get() 
>>> response.css('.mc>.mc_list.clearfix .tit>h3>a::text').getall()

如图:

在这里插入图片描述

>>> response.css('.mc>.mc_list.clearfix .xiang_price>span:nth-child(1)::text').getall()

在这里插入图片描述

通过上面这些命令语句就可以轻松的听取出来我们需要的数据,从而来判断分析这个网址到底能不能提取出来数据,或者是自己写的提取方法是否成功。

结语:

scrapy是一个非常强大的爬虫框架,它通过异步形式的爬取,非常适合我们需要爬取大量数据要求的,它内置了很多很有用的命令,对于我们平时提取网页数据,判断网页的情况都有很方便的命令支持。

scrapy官网:https://scrapy.org/感兴趣的,可以去官网了解更多。

  JavaScript知识库 最新文章
ES6的相关知识点
react 函数式组件 & react其他一些总结
Vue基础超详细
前端JS也可以连点成线(Vue中运用 AntVG6)
Vue事件处理的基本使用
Vue后台项目的记录 (一)
前后端分离vue跨域,devServer配置proxy代理
TypeScript
初识vuex
vue项目安装包指令收集
上一篇文章      下一篇文章      查看所有文章
加:2022-04-27 11:15:01  更:2022-04-27 11:16:50 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 1:05:53-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码