今天准备测试代理池IPProxyPool获取到ip的质量,在安装web.py的时候遇到了些问题,在此记录一下。

1.安装资料

web.py官网:http://webpy.org/

web.py的github地址:https://github.com/webpy/webpy/

2.安装

方法1:(推荐)

pip install web.py==0.40-dev1

方法2:

注意:这个是使用linux软连接方式

git clone git://github.com/webpy/webpy.git
ln -s `pwd`/webpy/web .

方法3(从源码处安装):

git clone https://github.com/webpy/webpy.git
cd webpy
python setup.py install
pip list

3.问题

3.1.python2与python3问题

pip install web.py

上面安装命令只支持python2,官网上已经说明过。这样安装会报错:

ERROR: Command errored out with exit status :
command: 'e:\program\python\python.exe' -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\\Users\\peng\\AppData\\Local\\Temp\\pip-install-ubdky_a3\\web.py\\setup.py'"'"'; __file__='"'"'C:\\Users\\peng\\AppData\\Local\\Temp\\pip-install-ubdky_a3\\web.py\\setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base pip-egg-info
cwd: C:\Users\peng\AppData\Local\Temp\pip-install-ubdky_a3\web.py\
Complete output ( lines):
Traceback (most recent call last):
File "<string>", line , in <module>
File "C:\Users\peng\AppData\Local\Temp\pip-install-ubdky_a3\web.py\setup.py", line , in <module>
from web import __version__
File "C:\Users\peng\AppData\Local\Temp\pip-install-ubdky_a3\web.py\web\__init__.py", line , in <module>
import utils, db, net, wsgi, http, webapi, httpserver, debugerror
ModuleNotFoundError: No module named 'utils'
----------------------------------------
ERROR: Command errored out with exit status : python setup.py egg_info Check the logs for full command output.

主要是这个错误:

Traceback (most recent call last):
File "<string>", line , in <module>
File "C:\Users\peng\AppData\Local\Temp\pip-install-ubdky_a3\web.py\setup.py", line , in <module>
from web import __version__
File "C:\Users\peng\AppData\Local\Temp\pip-install-ubdky_a3\web.py\web\__init__.py", line , in <module>
import utils, db, net, wsgi, http, webapi, httpserver, debugerror
ModuleNotFoundError: No module named 'utils'

原因是,除了0.40-dev1版本支持python3外其他版本都不支持(测试过webpy-0.39

github上的版本:https://github.com/webpy/webpy/tags

3.2.测试hello world出错

官网例子:

import web

urls = (
'/(.*)', 'hello'
)
app = web.application(urls, globals()) class hello:
def GET(self, name):
if not name:
name = 'World'
return 'Hello, ' + name + '!' if __name__ == "__main__":
app.run()

错误:

Traceback (most recent call last):
File "E:\Program\python\lib\site-packages\web\utils.py", line , in take
yield next(seq)
StopIteration The above exception was the direct cause of the following exception: Traceback (most recent call last):
File ".\test_web.py", line , in <module>
app = web.application(urls, globals())
File "E:\Program\python\lib\site-packages\web\application.py", line , in __init__
self.init_mapping(mapping)
File "E:\Program\python\lib\site-packages\web\application.py", line , in init_mapping
self.mapping = list(utils.group(mapping, ))
File "E:\Program\python\lib\site-packages\web\utils.py", line , in group
x = list(take(seq, size))
RuntimeError: generator raised StopIteration

解决方法:

修改Lib\site-packages\web 下的utils.py文件,在526行

源码:

def take(seq, n):
for i in range(n):
yield next(seq)

修改后:

def take(seq, n):
for i in range(n):
try:
yield next(seq)
except StopIteration:
return

运行:

访问http://localhost:8080/

python3安装web.py的更多相关文章

  1. Windows下安装Web.py快速指南

    环境介绍 首先介绍下安装使用的环境 - Windows 7 - Python 3.6 Web.py介绍 web.py是Python在Web领域一个轻量级的解决方案,所谓轻量,就是非常简单快速满足Web ...

  2. 使用PuTTy在CentOS下安装web.py与简单的文件传输

    两周前,出于帮朋友忙的目的,尝试了一下微信公众号的菜单自定义与自动回复功能的实现,成了. 两周后,需要将代码转移至朋友新购的服务器上,发现基本操作全忘记了,麻瓜!所以记一笔,希望也能对大家也有帮助. ...

  3. python3.X 安装web.py 失败的解决方法

    python2.x 安装python是非常顺利的 但是 在进行 pip3 install web.py 时提示很多错误 例如缺少模块 语法错误...... 最后试了一下web.py 的dev版本 pi ...

  4. python3使用web.py遇到的找不属性的错误解决

    今天用pyhon安装完web.py的时候,点击运行还是没错的,但是在网页输入链接就会报错.1.安装我是这样的: pip install web.py 2.运行后错误信息是这样: AttributeEr ...

  5. CentOS7+Python3.6利用web.py库进行微信公众平台服务器简易配置,token验证

    1.安装配置Python CentOS7 自带 Python2.7, 我用的是Python3.6.5,需要CentOS7安装配置Python3并和Python2共存的,请看以下教程: CentOS7安 ...

  6. python web.py安装使用

    官方首页:http://webpy.org/) 它的源代码非常整洁精干,学习它一方面可以让我们快速了解python语法(遇到看不懂的语法就去google),另一方面可以学习到python高级特性的使用 ...

  7. web.py 安装

    安装 安装web.py, 请先下载: http://webpy.org/static/web.py-0.37.tar.gz 或者获取最新的开发版: https://github.com/webpy/w ...

  8. windows下如何快速搭建web.py开发框架

    在windows下如何快速搭建web.py开发框架 用Python进行web开发的话有很多框架供选择,比如最出名的Django,tornado等,除了这些框架之外,有一个轻量级的框架使用起来也是非常方 ...

  9. 在windows下如何快速搭建web.py开发框架

    在windows下如何快速搭建web.py开发框架 用Python进行web开发的话有很多框架供选择,比如最出名的Django,tornado等,除了这些框架之外,有一个轻量级的框架使用起来也是非常方 ...

随机推荐

  1. 数据库与MySQL进阶(4)

    1,事务 事务指的是满足 ACID 特性的一组操作,可以通过 Commit 提交一个事务,也可以使用 Rollback 进行回滚. 1.1 ACID四大特性 原子性(Atomicity) 事务被视为不 ...

  2. Windows 10 下 Linux 子系统的安装和使用

    介绍 适用于 Windows 的 Linux 子系统(英语:Windows Subsystem for Linux,简称 WSL)是一个为在 Windows 10 和 Windows Server 2 ...

  3. Python练习_文件操作_day8

    1. 1.作业 1,有如下文件,a1.txt,里面的内容为: 老男孩是最好的学校, 全心全意为学生服务, 只为学生未来,不为牟利. 我说的都是真的.哈哈 分别完成以下的功能: a,将原文件全部读出来并 ...

  4. VBA常量(八)

    常量是一个命名的内存位置,用于保存脚本执行期间固定(无法更改)的值.如果用户试图更改常量值,则脚本执行结束时会出现错误.常量声明与声明变量相同. 以下是命名常量的规则 - 常量名称必须使用一个字母作为 ...

  5. js之split拆分字符串

    js之split拆分字符串 1.单字符拆分 let arr = str.split(',') 2.多字符拆分 let arr = str.split(/[(),]/)

  6. 将现有vue项目基于electron打包成桌面应用程序

    一.前言 项目本来打算采用B/S架构去做的,浏览器网址方式打开还是让用户不方便: 二.使用electron集成桌面应用 本身项目是使用vue-cli开发的,在使用electron之前,需要将本身的项目 ...

  7. javascript实现Html Table数据表分页

    直接调用: <style type="text/css">           th         {             font-size:18px;     ...

  8. HTML之表格标签和form表单

    表格标签: table 一般用于信息展示 tr行 td文本单元格 th标题单元格(文本加粗) table属性: cellspacing:单元格间距,一般设置为0 cellpadding:文字到边框的距 ...

  9. python之分支和循环

    Day 1-night 三元操作符 语法:a=x if 条件 else y  即:当条件为True时,a的值赋值为x,否则赋值为y eg:small=x if x<y else y <=& ...

  10. Road to Cinema(贪心+二分)

    https://www.cnblogs.com/flipped/p/6083973.html       原博客转载 http://codeforces.com/group/1EzrFFyOc0/co ...