当前位置:首页 » 编程语言 » geventpython安装

geventpython安装

发布时间: 2025-01-12 06:13:34

❶ windows怎么安装pybluez

今天弄了一上午的python-ldap,发现要么安装vc,要么用其他比较麻烦的方法,都比较麻烦。幸好找到这个地址:
http://www.lfd.uci.e/~gohlke/pythonlibs/
这上面有很多python第三方包的二进制安装文件,包括32位和64位的。下载安装就ok了!
包括了mysqldb,ldap等。
Index by date:
fiona
scikit-image
netcdf4
mercurial
scikits.audiolab
numba
llvmpy
python-igraph
rpy2
numpy
opencv
zope.interface
sfepy
quantlib
gdal
imread
django
psychopy
cx_freeze
msgpack
regex
cellcognition
vigra
scikit-learn
pytables
h5py
blender-mathutils
htseq
bioformats
simplejson
pyzmq
mako
simpleitk
qimage2ndarray
ujson
vlfd
libsvm
liblinear
cgkit
scipy
distribute
noise
theano
pyalembic
openimageio
pyaudio
pymca
pyamg
pgmagick
lxml
steps
sqlalchemy
cffi
biopython
python-ldap
pycurl
nipy
nibabel
pygments
mahotas
py-postgresql
pyamf
planar
holopy
pyvisa
jcc
polymode
polygon
cython
pyropes
llist
shapely
vtk
pymongo
libpython
meshpy
pandas
umysql
epydoc
coverage
cheetah
pyrxp
pybluez
pythonmagick
bsdiff4
pymssql
pymol
boost.python
orange
requests
pywcs
python-sundials
pymix
pyminuit
pylzma
pyicu
assimulo
basemap
pygraphviz
pyproj
mpi4py
spyder
pytz
pyfits
mysql-python
pygame
pycparser
twisted
pil
qutip
openexr
nipype
python-snappy
visvis
docutils
pyhdf
pyqwt
kivy
scikits.umfpack
psycopg
ets
guiqwt
veusz
pyqt
pyside
dpmix
py-fcm
scikits.hydroclimpy
smc.freeimage
scipy-stack
ipython
nose
mxbase
numexpr
pyyaml
ode
virtualenv
aspell_python
tornado
pywavelets
bottleneck
networkx
statsmodels
pylibdeconv
pyhook
lmfit
slycot
ndimage
scikits.scattpy
cvxopt
pymc
pysparse
scikits.odes
matplotlib
vpython
pycuda
pyopencl
pymvpa
pythonnet
cld
mod_wsgi
nltk
python-levenshtein
rtree
pywin32
scientificpython
sympy
thrift
pyopengl-accelerate
mdp
pyopengl
gmpy
reportlab
natgrid
scikits.vectorplot
pyreadline
milk
blosc
pycogent
pip
gevent
scons
carray
python-dateutil
jinja2
markupsafe
jsonlib
pysfml
fonttools
silvercity
console
python-cjson
pycluster
cdecimal
pytst
autopy
sendkeys
ceodbc
fipy
psutil
pyephem
pycifrw
blist
line_profiler
pydbg
bitarray
pyglet
python-lzo
faulthandler
delny
pyexiv2
ilastik
twainmole
scitools
pyspharm
casuarius
pyodbc
greenlet
nitime
pylibtiff
mmtk
pycairo
pysqlite
curses
videocapture
bazaar
nlopt
trfit
libsbml
oursql
sphinx
cellprofiler
py2exe
re2
liblas
cgal-python
pymedia
ffnet
pyfftw
libxml-python
pyfltk
pymex
pymatlab
zodb3
mmlib
pygtk
pyserial
babel
scikits.ann
scikits.delaunay
numeric
pulp
nmoldyn
pymutt
iocbio
jpype
wxpython
pybox2d
dipy
mmseg
pynifti
scikits.samplerate
scikits.timeseries
vitables
quickfix
numscons
visionegg

❷ windows下怎么安装Gevent

使用gevent,可以对并发多个http请求的爬虫程序进行很好的优化, 缺点是,安装相对麻烦,这个包依赖于libevent,在windows下面用easy_install直接安装是不行的,必须用源代码包
wget http://pypi.python.org/packages/source/g/gevent/gevent-0.13.8.tar.gz
tar zxvf gevent-0.13.8.tar.gz
cd gevent
里面有个fetch_libevent.py 用来帮你下载libevent依赖
python fetch_libevent.py
python setup.py build
python setup.py install
这样可以安装成功,如果还不行,只能使用大杀器了windows下安装python模块的终极解决方案。

❸ gevent怎么编译

在gevent中主要使用Greenlet,给Python提供一个轻量级的协同程序,作为一个C的扩展模
块.Greenlets主程序运行的所有系统进程是合理安排的.
这不同于任何multiprocessing或者multithreading提供的库和POSIX线程,这是真正的并行多处理器或多线程库提供真正的并
行结构
首先感谢https://maskv.com/technology/192.html作者给我的帮助我参考老方法编译gevent1.0rc2成功但是无法运行Goagent最新版只能运行2.17原因就是缺少python2.7的支持现在博主给出啦方法搬过来方便大家

Tomato中python2.7+gevent1.0rc2环境的搭建

之前因为没有搜索到在Tomato中编译安装gevent的教程,就自己琢磨出来Tomato中python2.6+gevent0.13.8环境的搭建方法(点击这里查看),
文章发布之后收到了众多的反馈。虽然Python官网当中的gevent最新版本为0.13.8,但Github上的gevent源码已经更新到了
1.0rc2,最新版的Goagent本地客户端也集成的是gevent1.0rc2,在整合了一些反馈之后,在自己的路由器上成功更新了python和
gevent。
首先卸载路由当中的python2.6及其相关组件,运行:

ipkg -force-removal-of-dependent-packages remove python26
rm -rf /opt/local/lib/python2.6 #若挂载路径非/opt请自行修改
rm -rf /opt/lib/python2.6

之后更新、安装所需要的依赖包:

ipkg update
ipkg upgrade
ipkg install busybox buildroot make grep openssl openssl-dev libuclibc++ wget-ssl python27 py27-setuptools

安装完成之后,我们要修复几个py27-setuptools当中的小错误。

首先easy_install的安装路径莫名其妙的指向了python2.5,不知是否只有我遇到了这个问题。修改 /opt/lib/python2.7/distutils/distutils.cfg 文件,将

1

site-dirs = /opt/local/lib/python2.5/site-packages

修改为

1

site-dirs = /opt/local/lib/python2.7/site-packages

其次easy_install的安装临时目录指向了/tmp目录,会造成安装某些组件时tmp剩余空间不足而导致的安装失败,我们要手动将其指定到挂载的U盘当中。
在/opt中创建tmp文件夹,修改 /opt/lib/python2.7/site-packages/setuptools/command/easy_install.py 文件,找到412行:

1

tmpdir = tempfile.mkdtemp(prefix="easy_install-")

将其修改为:

1

tmpdir = tempfile.mkdtemp(prefix="easy_install-",dir="/opt/tmp")

然后就可以使用easy_install安装greenlet与cython了(此步骤花费时间奇长无比):

easy_install-2.7 greenlet
easy_install-2.7 cython
ln -s /opt/local/bin/cygdb /opt/bin/cygdb
ln -s /opt/local/bin/cython /opt/bin/cython

之后下载gevent:

cd /opt
/opt/bin/wget https://github.com/downloads/Sit ... event-1.0rc2.tar.gz --no-check-certificate
tar zxvf gevent-1.0rc2.tar.gz
cd gevent-1.0rc2

直接编译会报错,因为使用了mips2的sync指令,在Goagent的issues上找到了答案。心得编译前记得开启虚拟内存
修改 /libev/ev.c 文件,找到604行的:参考https://code.google.com/p/goagent/issues/detail?id=7823

1

#define ECB_MEMORY_FENCE __asm__ __volatile__ ("sync" : : : "memory")

修改为:

#define ECB_MEMORY_FENCE __asm__ __volatile__ (".set mips2; sync; .set mips0": : :"memory")

执行

python2.7 setup.py install

下载并安装pyOpenSSL

cd /opt
wget http://pypi.python.org/packages/source/p/pyOpenSSL/pyOpenSSL-0.12.tar.gz
tar zxvf pyOpenSSL-0.12.tar.gz
cd pyOpenSSL-0.12
python2.7 setup.py install

安装结束之后,运行Goagent可能会提示.python-eggs错误,我们可以手动指定缓存目录。
修改Goagent的proxy.py文件,在:

1

import os

下一行添加:

1

os.environ['PYTHON_EGG_CACHE'] = '/opt/.python-eggs'

或者可以将 gevent-1.0rc2-py2.7-linux-mips.egg 解包:

cd /opt/local/lib/python2.7/site-packages
mv gevent-1.0rc2-py2.7-linux-mips.egg gevent-1.0rc2-py2.7-linux-mips.egg.zip
mkdir gevent-1.0rc2-py2.7-linux-mips.egg
cd gevent-1.0rc2-py2.7-linux-mips.egg
unzip /opt/local/lib/python2.7/site-packages/gevent-1.0rc2-py2.7-linux-mips.egg.zip

再次运行Goagent,应该不会再有错误提示了。

❹ Python requests+gevent+BeautifulSoup lxml 干点啥

  • 最近工作中有个需求是抓一些数据 数据量上万 讲真 以前都是玩玩 没实战 所以来这个需求的时候 我内心其实有点激动

  • 装逼模式已开启

  • 然后 我开始装逼了 用request + BeautifulSoup(html) 用这两货实现
    requests请求网络数据加载
    BeautifulSoup(html) 自在解析器 解析网络获取数据

  • 啪啦啪啦啪啦啪啦 没几下代码撸完了 顿时感觉登上人生巅峰
    开始运动 哦 不对 是运行 结果这货第一页(20个详情)数据 用了快4分钟
    要不是中途有些log打印 我都以为他死了


  • find分析结构图

  • find实现

    跟就结构 分析 大题思路
    1处是一个列表 ---> find_all("div",class__="className")--List
    然后对每个集合中取出 img 和 div[class="content"]的内容 代码如下

    for tag in data.find_all("div", class_="article block untagged mb15"):
    name = tag.find("img").get('alt')
    content = tag.find("div", class_="content").text.strip()
  • select实现

    这里要先记住一点 select 每次返回都是list 在你能控制的住的情况下取[0]
    同样分析 你会发现其实差不多 只是写法上有些不同 可以仔细看看两者的写法

    for tag in data.select('div[class="article block untagged mb15"]'):
    name = tag.select('img')[0].attrs.get('alt')
    content = tag.select('div[class="content"]')[0].get_text().strip()
  • 文档很多 但是下面这个我觉得看着最舒服BeautifulSoup 相关文档
    下面图片所示的好像是正规文档
    不知道为啥 也许是配色 看的我头晕



❺ Ubuntu安装Odoo

说个坑,需要先进root账户。否则会有创建不了相关文档及位置的提示报错。

wget https://www.python.org/ftp/python/3.9.0/Python-3.9.0.tgz

tar -zxf Python-3.9.0.tgz

cd Python-3.9.0

./configure --prefix=/usr/local/python3

./configure --enable-optimizations

Step 1 : Update Server

Step 2 : Create Odoo User in Ubuntu

Step 3 : Install PostgreSQL Server

Step 4 : Create Odoo user for postgreSQL

Step 5 : Install Python Dependencies

Step 6 : Install Python PIP Dependencies

Step 7 : Install other required packages

Step 8 : Install Wkhtmltopdf

Step 9 : Create Log directory

Step 10 :Install Odoo

Step 11 : Setting permissions on home folder

Step 12 : Create server config file

Step 13 : Install other Dependencies

Step 14 : 创建一个 Systemd Unit 文件
打开你的文本编辑器,并且在/etc/systemd/system/目录下创建一个名为odoo.service的文件, 将下面的内容粘贴到文件中:

保存文件并且关闭编辑器。
设置该文件的权限

通知 Systemd 有一个新的 unit 文件:

Step 15 : Now Start Odoo
通过执行下面命令启用并且启动 Odoo 服务:

或者直接执行以下命令

你可以通过下面的命令检查服务状态:

想要查看 Odoo 服务日志,使用下面的命令:

打开你的浏览器,输入:http://<your_domain_or_IP_address>:8069
假设所有安装完成,你将会看到下面这样的屏幕:

如果你无法访问这个页面,那很可能是你的防火墙阻止了端口8069。 请在宝塔面板(或通过防火墙命令)放行端口8069,云服务器上防火墙策略也应放行。

将 Nginx 配置成 SSL 代理服务器
默认的 Odoo 网站服务器通过 HTTP 服务。想要使 Odoo 部署更安全,我们将会配置 Nginx 作为 SSL 代理服务器,使网站服务器通过 HTTPS 进行服务。

SSL 代理服务器是一个用来处理 SSL 加密解密的代理服务器。这意味着,Nginx 将会处理并且解密进来的 TLS 连接(HTTPS),并且传递未被加密的请求到内部服务(Odoo)。在 Nginx 和 Odoo 之间的流量将不会被加密。

使用一个反向代理服务器有很多好处,比如负载均衡,SSL,缓存,压缩,静态内容服务,等等。

确保你满足下面的前提条件,再继续下一步的安装配置:

一个指向你的服务器的公网 IP 的域名,我们使用example.com。
安装 Nginx
域名的 SSL 证书。你可以安装一个免费的 Encrypt SSL 证书。
打开你的文本编辑器,创建或者编辑域名服务器配置块:

下面的配置将会建立 SSL,HTTP 转向 HTTPS,WWW 转向 non-www,缓存静态文件,并且开启 GZip 压缩。

不要忘记使用你自己的 Odoo 域名替换 example.com并且设置正确的 SSL 证书地址。
一旦你完成了,重启 Nginx和Odoo服务:

此时,反向代理服务器配置好了,你可以通过 https://example.com 来访问 Odoo 了。

改变监听端口

这一步是可选的,但是它是一个很好的实践操作。

默认情况下,Odoo 服务监听所有网络接口的8069端口。想要禁止对 Odoo 的直接访问,你可以封锁8069端口,并且强制 Odoo 只监听本地监控。

我们将会配置 Odoo 仅仅监听 127.0.0.1。打开配置文件,添加下面的内容到文件最后面: /etc/odoo13.conf

保存配置文件,并且重启 Odoo 服务器,使修改生效:

如果日志出现以下错误
“connect() failed (111: Connection refused) while connecting to upstream, client: XX.XX.XX.XX, server: , request: "POST /longpolling/poll HTTP/1.1", upstream: " http://127.0.0.1:8072/longpolling/poll ", host: "XX.XX.XX.XX", referrer: " http://XX.XX.XX.XX/web "”

解决:
Let's just say you have a longpolling parameter in your odoo-server.conf

and set

after starting your odoo, just runs $ sudo netstat -tulpn to ensure that your longpolling is running, and you'll get this info :

Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:8072 0.0.0.0:* LISTEN 10121/python3
tcp 0 0 0.0.0.0:8069 0.0.0.0:* LISTEN 10119/python3
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1461/sshd
...
when you can't find your longpolling there (that's why Bad Gateway Occurs, nginx can not find the running longpolling port), maybe just need to install gevent first:

and restart your odoo.
check $ sudo netstat -tulpn again, and you'll see that your longpolling port already running..

启用多进程

默认情况下,Odoo 工作在多线程模式。对于产品级别的部署,我们推荐修改成多进程服务器,提升稳定性,并且充分利用系统资源。

想要启用多进程,你需要编辑 Odoo 配置文件,并且设置一个非 0 的工作进程数字。工作进程数字,基于 系统中的 CPU 核心数字和可用的 RAM 内存来计算。

通过 Odoo 官方文档计算工作进程的数量以及需要的 RAM 内存大小,你可以使用下面的公式:

工作进程数量计算:

工作进程最大数量理论值 = (system_cpus * 2) + 1
1 个工作进程可以服务 约等于 6 个并行客户。
Cron 进程也需要 CPU
RAM 内存大小计算

我们考虑 20%的请求是重请求,并且 80%的请求是轻量级请求。重量级请求使用将近 1GB RAM,而轻量级请求使用将近 150MB RAM。
需要的 RAM = number_of_workers * ( (light_worker_ratio * light_worker_ram_estimation) + (heavy_worker_ratio * heavy_worker_ram_estimation) )
如果你不知道你的系统有多少 CPU,你可以使用下面的grep命令:

比方说,你有一个系统,拥有 4 核心 CPU,8GB RAM 内存,和 30 个并行 Odoo 用户。

30 users / 6 = 5 (5 是所需要的理论工作进程数量)
(4 * 2) + 1 = 9 (9 是理论的最大工作进程数量)
基于上面的计算,你可以使用 5 个进程+1 个进程(Cron 进程)总共 6 个进程。

基于工作进程,计算 RAM 内存:

RAM = 6 * ((0.8 150) + (0.2 1024)) ~= 2 GB of RAM
计算结果显示,Odoo 安装将会需要大概 2GB 内存。

想要切换到多进程模式,打开配置文件,并且添加计算值: /etc/odoo-server.conf

重启 Odoo 服务,使修改生效:

热点内容
安卓与ios哪个适合做主力机 发布:2025-01-12 08:54:11 浏览:340
微软怎么关闭配置更新 发布:2025-01-12 08:34:23 浏览:316
wifi的有限的访问权限 发布:2025-01-12 08:34:14 浏览:609
cftp文件重命名 发布:2025-01-12 08:33:27 浏览:881
https的加密算法 发布:2025-01-12 08:19:15 浏览:653
数据库交 发布:2025-01-12 08:09:06 浏览:472
一台剪辑电脑要什么配置 发布:2025-01-12 07:50:16 浏览:12
android与java 发布:2025-01-12 07:50:12 浏览:498
打印机手机连接密码是什么 发布:2025-01-12 07:48:31 浏览:586
冒险岛2什么服务器 发布:2025-01-12 07:39:22 浏览:136