• 开题报告
  • 社会实践报告
  • 申请报告
  • 研究报告
  • 党政报告
  • 可行性报告
  • 情况报告
  • 事迹材料
  • 申报材料
  • 述廉报告
  • 调查报告
  • 实验报告
  • 整改措施
  • 整改报告
  • 整改方案
  • 考察报告
  • 结题报告
  • 竞聘报告
  • 请示报告
  • 社会调查报告
  • 自查报告
  • 报告写作指导
  • 学习报告
  • 当前位置: 天一资源网 > 爬虫 正文

    基于Python爬虫技术的研究

    时间:2023-02-01 13:35:03 来源:天一资源网 本文已影响 天一资源网手机站

    洪丽华 HONG Li-hua;
    黄琼慧 HUANG Qiong-hui

    (厦门软件职业技术学院软件工程学院,厦门 361000)

    爬虫技术是一把双刃剑。随着科学的发展,网络的应用也随之快速地发展。网络的最大作用是随时随地给不同的用户提供资源。网络提供了大量的资源,特别是随着大数据技术的发展,用户如何在这些资源中尽快找到自己所需要的呢?运用爬虫技术,能够以最快地速度获取到用户所需要的相关资源。爬虫,像机器人一样,按照制定的规则、编写的程序,在网络中能够自动地搜索、整理相关的资源。爬虫技术,也称为网络爬虫[1]。运用爬虫技术,既能获取到网站上合法的、公开的的信息,也能获取到不合法的、私人的信息。本人提倡在法律法规的范围内、在道德约束的条件下,运用爬虫技术。

    爬虫技术的应用非常广泛,比如:爬取网页、爬取热点新闻、爬取金融信息、爬取用户的联系方式等等[2]。其中,最广泛、最流行的应用是爬取网页,即网页爬虫。实现爬虫技术,可以运用编程语言来编写程序代码,比如:C语言、C++、Java、Python等程序设计的语言。其中,Python语言具有简洁的代码、开发的效率高等优势,颇受开发者的热爱。

    本文从Python、爬虫技术和网页爬虫等三大方面进行阐述。

    Python提供的安装程序、源代码,都是免费的。它分别提供了与操作系统Windows、Linux和Mac等其它操作系统相匹配的所有免费的安装版本,又分别提供了在线的、离线的和压缩包的等安装程序。比如,Python 3.11.Orc-Sept 12,2022版 本 提 供 了Windows installer(32-bit)、Windows installer(64-bit)、Windows installer(ARM64)和Windows embeddable package(32-bit)、Windows embeddable package(64-bit)、Windows embeddable package(ARM64)等安装程序[3]。本文的程序代码是在Windows操作系统下运行的。Python的官方下载网址为:https://www.python.org/downloads。

    Python不仅仅自带强大、丰富的标准库,还拥有大量的第三方库[4]。Python的所有第三方库的官方下载网址为:https://www.pypi.org。假设要下载第三方库Scrapy,登录第三方库的官方网站,在搜索框中输入Scrapy,就能搜索到它的所有版本,用户再根据电脑的配置选择相应的版本下载、安装。

    在安装第三方库时,可以选择在线安装,也可以选择离线安装。如果是在线安装,比如安装Scrapy,在命令符窗口输入:pip install scrapy,系统会自动选择与电脑相匹配的scrapy版本进行安装;
    如果是离线安装,用户得先查看、判断电脑里面的相关软件的版本,再下载相应的scrapy版本进行安装。

    Python提供了许多库来实现爬虫技术[5],比如,BeautifulSoup库、rurlib库、requests库和pycurl库等等。其中,用得比较多的是requests库,包含以下常用的函数:request()、get()、head、post、put、patch、delete()等等。

    爬虫技术的一般流程是[5]:①明确需要爬取的目标、内容;
    爬取哪个网站的哪些内容,每个网站的URL是不一样的,需要正确地输入,比如,百度的URL是:http://www.baidu.com;
    京东的URL是:http://www.jd.com;
    需要爬取哪些内容,得正确地书写;
    ②用户向服务器发送请求;
    一般需要加请求的报头,比如加:“User-Agent”,以免被误认为是非法客户的访问;
    ③服务器返回给用户的数据;
    服务器会给用户发回许许多多的数据,包含有价值的数据和无价值的数据等等;
    ④解析、提取需要的数据;
    从服务器返回的数据中,解析和提取有价值的数据,过滤无价值的数据;
    ⑤用文件、数据库或其它方式存储相应的数据;
    把解析和提取的有价值数据用不同的形式保存以备用。

    Python也提供了许多框架来实现爬虫技术[6],比如,Portia、Crawley、Scrapy等等。其中Scrapy框架,包含下载器(Downloader)、Spider中间件(Spider Middlewares)、下载器中间件(Downloader Middlewares)等多个组件,同时,Scrapy框架也包含了许多作用不同的相对应的命令,比如,使用Scrapy下载器下载的URL并且将内容输出的fetch()命令。

    但是,由于爬虫的过程中,许多服务器资源会被消耗掉,服务器的稳定性也会受到很大影响,基于种种原因,爬虫是不受网站所有者的欢迎。为了能够顺利地实现爬虫技术,需要先了解网站所有者所制定的限制措施——反爬虫,然后,再制定相应的措施来规避反爬虫。比如,可以通过访问频度的调整来规避反爬虫[7],这种方法主要是针对有些网站设置的访问频度阈值,爬虫时设置的阈值应该恰当,可以比网站设置的访问频度阈值要略低,这样爬取的稳定性会比较好、爬取的效率也会比较高。还有其它规避反爬虫的方法:代理IP、应对网站结构变化等等。

    3.1 爬取网站上的相关信息:爬取网站“京东”的首页,并且输出到文件中[8]

    运用爬虫技术的一般流程,按照要求,运用Python提供的相关库的函数,按照步骤完成。

    相关的步骤及代码如下。

    3.2 爬取网站上的图片:爬取网站“豆瓣”首页的电影图片,并且输出到文件中

    编写的代码及步骤如下。

    #运行结果,所爬取的图片(部分)如图1。

    图1 爬取的图片

    3.3 爬取相关的网页:爬取网站“百度”上带有关键词”学习强国”的相关网页,并且输出到文件中

    编写的代码及步骤如下。

    图2 运行过程

    基于Python的爬虫技术,是目前许多用户所采用和所追求的一项技术,也是大部分学者比较喜欢的一种方法[9]。Python为用户提供了许多爬虫技术的库,也提供了许多爬虫技术的框架,既能够规避反爬虫技术,又能够自动地、高效率地为用户爬取需要的数据。基于Python的爬虫技术,是一项可以继续扩展和延伸的技术。

    猜你喜欢 爬虫离线网页 利用网络爬虫技术验证房地产灰犀牛之说房地产导刊(2022年10期)2022-10-18基于卷积神经网络的离线笔迹鉴别系统电脑知识与技术(2022年15期)2022-07-02异步电机离线参数辨识方法防爆电机(2021年4期)2021-07-28基于Python的网络爬虫和反爬虫技术研究现代信息科技(2021年21期)2021-05-07基于HTML5与CSS3的网页设计技术研究成都信息工程大学学报(2021年6期)2021-02-12新版Windows 10补丁离线安装更简单电脑爱好者(2020年23期)2020-12-30目前互联网中的网络爬虫的原理和影响数码设计(2019年5期)2019-12-20基于CSS的网页导航栏的设计电子制作(2018年10期)2018-08-04基于HTML5静态网页设计魅力中国(2018年5期)2018-07-30大数据背景下校园舆情的爬虫应用研究电子制作(2018年2期)2018-04-18 相关关键词: python网络爬虫——入门基础 python3网络爬虫入门 python爬虫入门教程 爬虫
    相关热词搜索: 爬虫 研究 技术

    • 范文大全
    • 教案下载
    • 优秀作文
    • 励志
    • 课件
    • 散文
    • 名人名言