提供的安装程序、源代码,都是免费的。它分别提供了与操作系统Windows、Linux和Mac等其它操作系统相匹配的所有免费的安装版本,又分别提供了在线的、离线的和压缩包的等安装程序。比如,Python3.11.OrcSept12,2022版本提供了Windowsinstaller(32-bit)、Windowsinstaller(64-bit)、Windowsinstaller(ARM64)和Windowsembeddablepackage(32-bit)、Windowsembeddablepackage(64-bit)、Windowsembeddablepackage(ARM64)等安装程序[3]。本文的程序代码是在Windows操作系统下运行的。Python的所有第三方库的官方下载网址为:https://www.pypi.org。假设要下载第三方库Scrapy,登录第三方库的官方网站,在搜索框中输入Scrapy,就能搜索到它的所有版本,用户再根据电脑的配置选择相应的版本下载、安装。在安装第三方库时,可以选择在线安装,也可以选择离线安装。如果是在线安装,比如安装Scrapy,在命令符窗口输入:pipinstallscrapy,系统会自动选择与电脑相匹配的scrapy版本进行安装;如果是离线安装,用户得先查看、判断电脑里面的相关软件的版本,再下载相应的scrapy版本进行安装。
爬虫技术Python提供了许多库来实现爬虫技术,比如,BeautifulSoup库、rurlib库、requests库和pycurl库等等。其中,用得比较多的是requests库,包含以下常用的函数:request()、get()、head、post、put、patch、delete()等等。爬虫技术的一般流程是:
①明确需要爬取的目标、内容;爬取哪个网站的哪些内容,每个网站的URL是不一样的,需要正确地输入,比如,百度的URL是:http://www.baidu.com;京东的URL是:http://www.jd.com;需要爬取哪些内容,得正确地书写;
②用户向服务器发送请求;一般需要加请求的报头,比如加:“User-Agent”,以免被误认为是非法客户的访问;
③服务器返回给用户的数据;服务器会给用户发回许许多多的数据,包含有价值的数据和无价值的数据等等;
④解析、提取需要的数据;从服务器返回的数据中,解析和提取有价值的数据,过滤无价值的数据;
⑤用文件、数据库或其它方式存储相应的数据;把解析和提取的有价值数据用不同的形式保存以备用。Python也提供了许多框架来实现爬虫技术[6],比如,Portia、Crawley、Scrapy等等。其中Scrapy框架,包含下载器(Downloader)、Spider中间件(SpiderMiddlewares)、下载器·154中间件(DownloaderMiddlewares)等多个组件,同时,Scrapy框架也包含了许多作用不同的相对应的命令,比如,使用Scrapy下载器下载的URL并且将内容输出的fetch()命令。但是,由于爬虫的过程中,许多服务器资源会被消耗掉,服务器的稳定性也会受到很大影响,基于种种原因,爬虫是不受网站所有者的欢迎。为了能够顺利地实现爬虫技术,需要先了解网站所有者所制定的限制措施——反爬虫,然后,再制定相应的措施来规避反爬虫。比如,可以通过访问频度的调整来规避反爬虫[7],这种方法主要是针对有些网站设置的访问频度阈值,爬虫时设置的阈值应该恰当,可以比网站设置的访问频度阈值要略低,这样爬取的稳定性会比较好、爬取的效率也会比较高。还有其它规避反爬虫的方法:代理IP、应对网站结构变化等等。