专栏首页腾讯云技术服务团队SCF实现python爬虫之PyQuery的功能
原创

SCF实现python爬虫之PyQuery的功能

PyQuery库是一个很强大而又灵活的网页解析库,是实现爬虫功能的很好选择。那么在SCF(无服务器云函数)中是否可以实现呢?

是可以的!下面让我们来实践一下。

准备环境:

1.linux CentOS 7.4 64位服务器一台,预装python2.7.5

2.安装pip工具,不知道可以度娘

3.开通SCF服务,创建Python2.7环境函数

搭建本地环境:

1.如果pip不是最新版,要更新pip为最新版本,命令行运行:

python -m pip install --upgrade pip

2.安装wheel,命令行运行:

pip install wheel 
安装wheel

3.安装lxml,命令行运行:

pip install lxml
安装lxml

4.安装PyQuery,命令行运行:

pip install pyquery
安装pyquery

5.安装selenium测试工具

pip install -U selenium

6.创建一个demo,index.py

示例代码为:

# -*- coding: utf8 -*-
from pyquery import PyQuery as pq
from lxml import etree

doc = pq('https://cloud.tencent.com')
print(doc)

7.测试本地代码,命令行执行:

python index.py
测试本地爬虫功能

页面爬取成功。

发布至SCF:

1.创建打包目录

mkdir /data/myscf

2.复制环境:

pip install PyQuery -t /data/myscf
pip install lxml -t /data/myscf/
pip install pyquery -t /data/myscf/

3.复制测试代码index.py

打包目录结构

4.执行打包命令:

cd /data/myscf && zip myscf.zip * -r

5.将压缩包myscf.zip上传至SCF

SCF控制台上传zip包

6.验证效果:

页面抓取成功

验证成功。开始您的爬虫功能吧。

注:如果是python3.6环境,验证时报“{"errorCode":1,"errorMessage":"/var/user/lxml/etree.so: undefined symbol: _Py_ZeroStruct"}”,复制环境时指定版本用 pip install lxml==3.6.4 r -t /data/myscf/

SCF python2.7环境demo

SCF python3.6环境demo

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Python 3 入门,看这篇就够了

    链接:https://shockerli.net/post/python-study-note/

    华章科技
  • 这里有一份清华大学数据科学学习资料,请注意查收!

    在2016年和2017年的全美最佳岗位排行榜中,“数据科学家”一职位已经连续两年位列前茅;

    华章科技
  • Jupyter Notebook的三大短板,都被这个新工具补齐了

    在机器学习和数据科学领域,Jupyter已经家喻户晓。它把笔记、代码、图表、注释融合在一个交互式的笔记本里,还能添加各种扩展功能。可谓机器学习入门进阶研究之神器...

    量子位
  • pip相关操作与可能遇到的问题

    Petrichor_
  • 业余时间学数据分析,如何快速上手

    广泛被应用的数据分析:谷歌的数据分析可以预测一个地区即将爆发的流感,从而进行针对性的预防;淘宝可以根据你浏览和消费的数据进行分析,为你精准推荐商品;口碑极好的网...

    华章科技
  • 查看库的安装版本和安装路径

    Petrichor_
  • conda相关操作与可能遇到的问题

    pip 运行的是 anaconda 的 python sudo pip 运行的是 系统 的 python

    Petrichor_
  • Cannot remove entries from nonexistent file /usr/local/bin/anaconda2/lib/python2.7/site-packages/eas

    Petrichor_
  • 当年发明hello, world的大神,后来怎么样了?

    导读:对于程序员来说,"hello, world"就像小学一年级数学课上的1+1,一个简单而舒适的起点。也正如字面意思所说,它将引导你开启一个新的世界,一个等着...

    华章科技
  • 值得收藏的Python小技巧:这17个骚操作你都OK吗?

    导读:Python 是一门非常优美的语言,其简洁易用令人不得不感概人生苦短。在本文中,作者 Gautham Santhosh 带我们回顾了 17 个非常有用的 ...

    华章科技

扫码关注云+社区

领取腾讯云代金券