大家好,今天来为大家解答淘宝领卷网站源码分享这个问题的一些问题点,包括淘宝领券平台怎么赚钱也一样很多人还不知道,因此呢,今天就来为大家分析分析,现在让我们一起来看看吧!如果解决了您的问题,还望您关注下本站哦,谢谢~
少年们,你们双十一剁手了吗?现在收到快递了吗?现在是不是痛苦万分,天天过着吃土的日子啊?
吃土不要紧,只要有本事,就轮不到吃土。铲屎官今天就给大家带来一个骚气的爬虫操作,可以让你查询自己的快递状态。
这个就是Splash和scrapy-splash。Splash是一个javascript渲染服务。它是一个带有HTTPAPI的轻量级Web浏览器,使用Twisted和QT5在Python3中实现。所以,如果使用Splash的话,需要一台服务器做支撑。而scrapy-splash则是一个Python库,能够在Scrapy框架里面使用Splash。
今天,铲屎官就来拿这两个东西,来个你们捯饬捯饬如何能够优雅的查询到你的快递订单情况。
Splash初探
Splash在前面说了,是一个JavaScript渲染服务,所以,我们如果要玩Splash,就需要一台机器作为服务器来支撑。哪里有服务器呢?你可以有两个选择:
使用自己的机器作为服务器来运行用你双十一购买的阿里云服务器或者腾讯云服务器来做操作(推荐)
插播一则小福利:
虽然已经过了双十一了,但是,如果你还没有云服务器的话,可以通过下面的两个链接来领取价值千元的云服务器优惠券,原价300多的服务器,一年用了优惠券只要100多,不到200。超级实惠,数量有限,机会不多,大家要抓紧。
阿里云(最高¥1888云产品通用代金券):
https://promotion.aliyun.com/ntms/yunparter/invite.html?userCode=nrkmbo9q
腾讯云(总价值高达2775元代金券):
https://cloud.tencent.com/redirect.php?redirect=1025&cps_key=b351b2fc50b15866ff9d19b58a5df0f5
铲屎官这里,就给大家演示在阿里云服务器上面是怎么操作的。因为双十一的时候,阿里云的服务器那是真的便宜啊。如果你那个时候还在犹豫,没有买,那么对不起,你的犹豫耽误了你上车,现在的服务器如果领券了也要将近200一年。所以,在机遇面前,人要当机立断,千万不能犹豫。如果你没有服务器,那么本地安装步骤也基本一致。如果有什么细微不一样的地方,安装过程请简单百度一下,网络一堆答案。
私信小编007即可获取小编精心准备的资料哦!
如果要装Splash,我们首先需要在Linux服务器上面安装Docker。
大家别慌,别听到Docker就觉得这个东西好高大上,好神秘。其实,我们这里使用Docker就是为了两点:一是安装Splash;二是运行Splash服务。
我拿来讲解的阿里云服务器上面安装的是CentOS7.4系统。
首先,通过命令$docker–version来检测你的服务器上之前有没有安装过Docker。
如果没有安装过,那么Docker要求CentOS系统的内核版本高于3.10,所以前提条件来验证你的CentOS版本是否支持Docker。输入以下命令即可查看:
1$uname-r\n
我的服务器出现的结果如下:
显示的结果是大于3.10,可以安装。
接着,我们需要升级一下yum和开始安装,这个简单,依次输入下面的命令就可以:
1安装需要的软件包依赖\n5$yuminstall-yyum-utilsdevice-mapper-persistent-datalvm2\n6\n7安装docker(由于repo中默认只开启stable仓库,故这里安装的是最新稳定版)\n11$yuminstalldocker-ce\n12\n13kw’).value=%s;document.querySelector(‘startrequest\n21defstart_requests(self):\n22urlBaidu=”https://www.baidu.com/”\n23yieldSplashRequest(urlBaidu,callback=self.parse_page,endpoint=’execute’,\n24args={‘lua_source’:script,’cargoNo’:’71421570320700′,’wait’:1})\n25\n26#parsethehtmlcontent\n27defparse_page(self,response):\n28content=response.body\n29soup=BeautifulSoup(content,”html.parser”)\n30div_list=soup.find_all(‘div’,attrs={“class”:”op_express_delivery_timeline_info”})\n31print(‘=’*40)\n32foritemindiv_list:\n33print(item.text)\n34print(‘=’*40)\n
这里的爬虫写的很简单,只是为了给大家展示一下Scrapy-splash的使用。简单的说一下爬虫的结构:
首先是有script变量,这个变量就是我们在之前提到的黑色框框里面的Lua脚本。这里的代码逻辑就是,先去百度页面,然后在搜索框里面输入订单号,然后点击搜索按钮。
然后在start_request()方法里面,我们调用的是SplashRequest()方法。我们需要调的是scrapy-splash的SplashRequest,而不是之前的scrapy的Request。
最后就是args里面,我们传入的参数有这么几个,这几个参数对应的就是script里面的变量。
其他都是标准的爬虫流程,比如用BeautifulSoup来解析html等。
如果这个时候爬虫运行,则可以看到控制台输出了结果:
我们看到,这个快递信息已经答应出来了。我们的教学任务就此完成。
后续
这个可以再扩展一下,比如把快递信息封装起来啊,存储起来啊,玩法有很多,大家可以自行发挥。
好了,关于淘宝领卷网站源码分享和淘宝领券平台怎么赚钱的问题到这里结束啦,希望可以解决您的问题哈!
