前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python2.6低版本Python如何实现爬虫功能

Python2.6低版本Python如何实现爬虫功能

作者头像
震八方紫面昆仑侠
发布2020-07-23 14:14:16
7980
发布2020-07-23 14:14:16
举报

之前我在文章中实现了用requests库爬取腾讯疫情数据的功能。但是我再Linux服务器上运行那个程序却出现了意想不到的情况。运行结果

代码语言:javascript
复制
Python 2.6.6 (r266:84292, Jun 20 2019, 14:14:55) 
[GCC 4.4.7 20120313 (Red Hat 4.4.7-23)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import requests
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib/python2.6/site-packages/requests/__init__.py", line 43, in <module>
    import urllib3
  File "/usr/lib/python2.6/site-packages/urllib3/__init__.py", line 7, in <module>
    from .connectionpool import HTTPConnectionPool, HTTPSConnectionPool, connection_from_url
  File "/usr/lib/python2.6/site-packages/urllib3/connectionpool.py", line 100
    _blocking_errnos = {errno.EAGAIN, errno.EWOULDBLOCK}
                                    ^
SyntaxError: invalid syntax

由于Linux服务器上的Python版本为2.6.6,import requests就已经报错了,这个库是没法用了。这个错误我试了几种办法,都宣告失败。之前文章是在windows环境Python2.7下完成的。

你可能会说升级Python版本吧?我有过升级glibc把服务器搞死的惨痛教训,不敢再乱升级了,而且我试验的机器是24小时运行着其它系统的生产服务器,一旦升级出问题,会酿成生产事故的。所以我只能在2.6的Python下开发爬虫。使用urllib2库代替requests库,实现过程基本是一样的简单明了。代码如下

代码语言:javascript
复制
#coding=utf-8
import urllib2
exact_url='https://news.qq.com/zt2020/page/feiyan.htm'
try:
    r=urllib2.urlopen(exact_url) #抓取设定url的数据,可以改成你想获取的任意地址
except urllib2.URLError,e:
    print e.code
    exit()
    
r.encoding='utf8'
html=r.read() 
print html  #打印抓取的结果

所以如果你的服务器Python版本是2.6或者更低,尝试使用urllib2库吧!

低版本的Python还会出现无法安装mongodb的驱动包pymongo的情况,如下

这种情况可以选择MySQL的Python驱动包代替,pip安装MySQL的Python驱动包也不一定成功,我最后用yum安装成功的。

更奇葩的是2.6下,django也无法安装成功,

我最后放弃了django,选择了bottle框架来搭建web服务,这个框架虽然普及率不如django,但使用起来也还不错,我后面单独开一篇来介绍这个框架搭建web服务遇到的各种坑。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-03-01,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 MySQL从删库到跑路 微信公众号,前往查看

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

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云数据库 MySQL
腾讯云数据库 MySQL(TencentDB for MySQL)为用户提供安全可靠,性能卓越、易于维护的企业级云数据库服务。其具备6大企业级特性,包括企业级定制内核、企业级高可用、企业级高可靠、企业级安全、企业级扩展以及企业级智能运维。通过使用腾讯云数据库 MySQL,可实现分钟级别的数据库部署、弹性扩展以及全自动化的运维管理,不仅经济实惠,而且稳定可靠,易于运维。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档