当前位置: 首页 > news >正文

建网站那种服务器好站长工具流量统计

建网站那种服务器好,站长工具流量统计,做网站在线支付系统多少钱?,一级消防工程师考试题型前一小节我们拿到了页面的数据,那页面中那么多内容,我们想要其中的部分内容,该如何获取呢?这就需要对我们下载到的数据进行解析,提取出来想要的数据,这节就讲讲如何提取数据。 引入 我们编辑保存下来的shouye.html文件看下,发现这是什么鬼,全是如下图的代码。 没错…

前一小节我们拿到了页面的数据,那页面中那么多内容,我们想要其中的部分内容,该如何获取呢?这就需要对我们下载到的数据进行解析,提取出来想要的数据,这节就讲讲如何提取数据。

引入

我们编辑保存下来的shouye.html文件看下,发现这是什么鬼,全是如下图的代码。
在这里插入图片描述

没错,html文件就是由一堆代码组成的,然后由浏览器进行渲染展示,那我们直接在浏览器中打开html文件是不是就可以了呢,来看看浏览器打开什么样。
在这里插入图片描述

感觉比纯代码好多了,但是我们再看看实际的网站页面什么样呢?
在这里插入图片描述

发现正式的网站漂亮很多,布局也很好,那这种效果怎么来的呢?学过web开发的朋友肯定知道,浏览器渲染网页时,不仅有html文件,还有CSS和JavaScript文件,来共同渲染出页面。CSS用来设定网页显示的效果,包括布局、样式、颜色等等,JavaScript用来实现网页的动画或特效,做爬虫我们要知道,我们默认爬取下来的只有html文件,不包括CSS和JS文件,但需要知道有这两个文件,因为有些网站不是静态的,数据是实时从数据库中拿的,而这些数据是通过JS来获取的,爬虫学深了后,就会知道如何从JS中拿数据了,后面有机会单独讲解这一块。
网站开发不在本教程的范围内,因此这里只提及,不会深度讲究,有需要系统学习的,可自己寻找相关文章或课程了解。

在哪提取数据

接着看如何提取数据,访问网站,我们能看到有几篇文章,我想找到这些文章的标题和链接,怎么找到它们呢?我们需要解析爬取到的页面,提取其中的想要的数据,说到这,就牵扯到Scrapy中一个重要的类——Spider类。

Spider类

Spider类是用来定义怎样抓取网站或一组站点的,包括如何爬取、如何提取结构化数据等。也就是说我们爬取什么网站,怎么爬取,如何解析这个网站都在Spider中定义。
这里说下Spider的抓取周期,有助于我们的理解:

  1. 生成初始的Requests爬取第一个URLs,并标识回调函数用于接收从requests中下载到的response。
    • 通过start_requests()方法获得要执行的第一个请求,该方法默认从start_urls列表中获得 URL来生成请求,并将parse方法作为请求的默认回调函数。
  2. 在回调函数中,解析response,并返回Item对象、Request对象或一个可迭代的对象。
    • 返回的Request对象也包含一个回调函数,稍后会被Scrapy下载,并用指定的回调函数对其处理
  3. 在回调函数中解析并生成items时,你可以使用Scrapy自带的Selectors,也可以用BeautifulSoup、lxml或其他你熟悉的工具
  4. 最后返回的items,一般会被持久化地保持到数据库,或用Feed exports导出到不同的文件。(Feed exports的相关介绍可参见Feed exports — Scrapy 2.12.0 documentation)

选择器Selectors

上面了解了Spider类的作用,从而也知道了,我们要想解析出文章的标题和链接,需要在爬虫程序下的回调函数中解析,也提到了,我们解析数据可以使用Scrapy自带的Selectors,也可以用BeautifulSoup、lxml或其他工具,本教程主要讲解的是Scrapy,因此BeautifulSoup、lxml工具不在此介绍,后面我会出单独的文章,感兴趣的朋友可以关注一下,这里我们主要说下Scrapy自带的Selectors。
Scrapy的Selectors是对parsel库的简单封装,为了方便对response对象做处理,关于parsel库可参考Parsel — Parsel 1.9.1 documentation。
Scrapy的Selectors包含两种选择器——CSS Selector和XPath Selector,下面分别介绍下。

CSS Selector

严格意义上来说,CSS不是一个选择器,CSS是一套用来控制HTML文件样式的语言,在Scrapy中可用其来定位内容,所以在Scrapy中我们管他叫CSS选择器。
下面是css的查找示例。

>>> response.css("title::text").get()

XPath Selector

XPath和CSS一样,XPath是一套在XML中查找元素的语言,可在xml文档中对元素和属性进行遍历,除了XML也可用于在HTML文件中快速查找定位,在Scrapy中可用其来定位内容,所以在Scrapy中我们管他叫XPath选择器。
下面是XPath的查找示例。

>>> response.xpath("//title/text()").get()

通过上面两个例子可以看出,两者都是查找标题的,但是使用了两种不同的选择器语法,CSS是通过样式来查找,XPath是通过节点来查找,两者的语法有所区别。后面会有专门的章节讲解选择器如何使用,这里不做过都介绍了,需要深入研究的可以看后面的选择器章节,下面我们直接进入实战。

验证选择器

知道了如何写选择器,那我们怎么验证我们的选择器写的对不对呢?
之前在命令行一章提到过,使用shell命令可以验证我们写的选择器对不对,下面我们来演示下。
首先访问我们的网站查看下网站标题为——古月半部落格。
在这里插入图片描述

然后我们打开装有Scrapy环境的终端,输入下面的命令。

>>> scrapy shell https://www.jayhgq.cn
2024-11-25 14:40:55 [scrapy.utils.log] INFO: Scrapy 2.11.2 started (bot: scrapybot)
(此处省略部分日志记录)
2024-11-25 14:40:56 [scrapy.core.engine] INFO: Spider opened
2024-11-25 14:40:56 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://www.jayhgq.cn> (referer: None)
[s] Available Scrapy objects:
[s]   scrapy     scrapy module (contains scrapy.Request, scrapy.Selector, etc)
[s]   crawler    <scrapy.crawler.Crawler object at 0x0000016732AB41A0>
[s]   item       {}
[s]   request    <GET https://www.jayhgq.cn>
[s]   response   
http://www.dinnco.com/news/44867.html

相关文章:

  • 自己搭建小程序手机百度seo快速排名
  • 湛江免费网站制作重庆二级站seo整站优化排名
  • 帝国cms做搜索网站武汉百度推广入口
  • 怎样在阿里巴巴做网站域名解析在线查询
  • 网站建设与制作的流程网站排名怎么做
  • html5手机app网站模板网络营销软件商城
  • 成都有啥好玩的地方东莞网站seo优化托管
  • 网做 网站有哪些百度百科创建
  • 做网站 侵权上海seo顾问推推蛙
  • 做网站的网站企业策划推广公司
  • 织梦cms发布侵权网站清单千锋教育前端学费多少
  • 网站无备案seo创业
  • 如何做淘宝商城网站设计郑州众志seo
  • 百度网站怎样做推广本周国内新闻
  • wordpress中文免费seo网站快速排名软件
  • 天津做网站联系方式seo优化招聘
  • 网站互动功能公关公司提供的服务有哪些
  • 怎么把网站做10万ip网站seo推广优化教程
  • 网站需求怎么做淘宝指数查询官网
  • 企业网站推广工具株洲seo
  • 上行2m可以做网站厦门seo推广外包
  • 做一个谷歌网站多少钱seo从0到1怎么做
  • 赤峰市做网站多少钱企业老板培训课程
  • 社交网站推广怎么做网络推广策划方案模板
  • 电子商务网站建设报价广州建网站的公司
  • 然后做服装网站网站搭建公司哪家好
  • 供应链系统平台搜索引擎内部优化
  • 电子商务网站建设教程 pdf广告投放方式
  • 申通e物流的网站建设郑州网站推广优化公司
  • 做网站设计的电脑需要什么配置百度云搜索引擎网站