通过python快速搭建http服务

2017-2-15 杜世伟 Python

python -m SimpleHTTPServer 快速搭建http服务

有时你需临时搭建一个简单的 Web Server,但你又不想去安装 Apache、Nginx 等这类功能较复杂的 HTTP 服务程序时。这时可以使用 Python 内建的 SimpleHTTPServer 模块快速搭建一个简单的 HTTP 服务器。

使用python -m SimpleHTTPServer 模块可以把你指定目录中的文件和文件夹以一个简单的 Web 页面的方式展示出来。

如我想把目录/Users/xiaodu/python/test目录下的内容通过web共享出来,目录内容如下:

阅读全文>>

标签: http python SimpleHTTPServer

评论(0) 浏览(17974)

Python之Requests模块使用详解

2017-1-17 杜世伟 Python

     Requests模块是一个用于网络访问的模块,其实类似的模块有很多,比如urllib,urllib2,httplib,httplib2,他们基本都提供相似的功能,那为什么Requests模块就能够脱引而出呢?可以打开它的官网看一下,是一个“人类“用的http模块。那么,它究竟怎样的人性化呢?相信如果你之前用过urllib之类的模块的话,对比下就会发现它确实很人性化。
一、导入

下载完成后,导入模块很简单,代码如下:

import requests
二、请求url

这里我们列出最常见的发送get或者post请求的语法。
1.发送无参数的get请求:
r=requests.get("http://pythontab.com/justTest")
现在,我们得到了一个响应对象r,我们可以利用这个对象得到我们想要的任何信息。
上面的例子中,get请求没有任何参数,那如果请求需要参数怎么办呢?


阅读全文>>

标签: linux python request

评论(0) 浏览(13867)

python setuptools 安装

2017-1-15 杜世伟 Python

python下的setuptools带有一个easy_install的工具,在安装python的每三方模块、工具时很有用,也很方便。

安装setuptools前先安装pip,

请参考:linux下pip的安装步骤及使用详解


1. 下载:
在它的官网可以下载到安装包:
https://pypi.python.org/pypi/setuptools

页面最下面的是它的安装链接,如:
$wget --no-check-certificate https://pypi.python.org/packages/source/s/setuptools/setuptools-12.0.3.tar.gz#md5=f07e4b0f4c1c9368fcd980d888b29a65

tar -zxvf setuptools-12.0.3.tar.gz
cd setuptools-12.0.3
python setup.py install

如果在安装过程中出现以下错误:
Installed /usr/local/python2.7.3/lib/python2.7/site-packages/supervisor-4.0.0_dev-py2.7.egg
Processing dependencies for supervisor==4.0.0-dev
Searching for meld3>=1.0.0
Reading https://pypi.python.org/simple/meld3/
Download error on https://pypi.python.org/simple/meld3/: [Errno 1] _ssl.c:504: error:14090086:SSL 

阅读全文>>

标签: python pip setuptools

评论(0) 浏览(13995)

module' object has no attribute 'OP_NO_TLSv1_1

2017-1-9 杜世伟 Python

scrapy startproject pachong
Traceback (most recent call last):
  File "/bin/scrapy", line 9, in <module>
    load_entry_point('Scrapy==1.5.0', 'console_scripts', 'scrapy')()
  File "build/bdist.linux-x86_64/egg/pkg_resources.py", line 339, in load_entry_point
    return False    # egg isn't macosx or legacy darwin
  File "build/bdist.linux-x86_64/egg/pkg_resources.py", line 2470, in load_entry_point
    return self.__dep_map
  File "build/bdist.linux-x86_64/egg/pkg_resources.py", line 2184, in load
    part = replace(part,part)
  File "/usr/lib/python2.7/site-packages/scrapy/cmdline.py", line 9, in <module>
    from scrapy.crawler import CrawlerProcess
  File "/usr/lib/python2.7/site-packages/scrapy/crawler.py", line 7, in <module>
    from twisted.internet import reactor, defer
  File "/usr/lib64/python2.7/site-packages/twisted/internet/reactor.py", line 38, in <module>
    from twisted.internet import default
  File "/usr/lib64/python2.7/site-packages/twisted/internet/default.py", line 56, in <module>
    install = _getInstallFunction(platform)
  File "/usr/lib64/python2.7/site-packages/twisted/internet/default.py", line 44, in _getInstallFunction
    from twisted.internet.epollreactor import install
  File "/usr/lib64/python2.7/site-packages/twisted/internet/epollreactor.py", line 24, in <module>

阅读全文>>

标签: python pip scrapy twisted

评论(0) 浏览(11863)

python 匿名函数

2016-10-23 杜世伟 Python

python 匿名函数

1.定义: 
        匿名函数顾名思义就是指:是指一类无需定义标识符(函数名)的函数或子程序。
2.语法格式:
         lambda 参数:表达式
         lambda语句中,开头先写关键字lambda,冒号前是参数,可以有多个,用逗号隔开;冒号右边的为表达式,需要注意的是只能有一个表达式。由于lambda返回的是函数对象(构建的是一个函数对象),所以需要定义一个变量去接收。

3.注意点:

          lambda 函数可以接收任意多个参数 (包括可选参数) 并且返回单个表达式的值。lambda 函数不能包含命令,包含的表达式不能超过一个。

4.匿名函数优点:
         使用Python写一些脚本时,使用lambda可以省去定义函数的过程,让代码更加精简。
         对于一些抽象的,不会被别的地方再重复使用的函数,有时候函数起个名字也是个难题,使用lambda不需要考虑命名的问题
         使用lambda在某些时候然后代码更容易理解

5.应用:
         在内置函数 max() 求最大值,min()求最小值, map() 映射, reduce 合并, filter() 过滤 中会用到!

阅读全文>>

标签: python lambda

评论(0) 浏览(5427)

Centos Python2 升级到Python3的简单实现

2016-6-22 杜世伟 Python

1. 从Python官网到获取Python3的包, 切换到目录/usr/local/src

wget https://www.python.org/ftp/python/3.5.1/Python-3.5.1.tar.xz
2. 使用命令如下命令进行解压缩:

xz -d Python-3.5.1.tar.xz
tar -xf Python-3.5.1.tar.xz
3. 在/usr/local路径下创建目录--python3.5, 为第4步创建安装目录1. 从Python官网到获取Python3的包, 切换到目录/usr/local/src
wget https://www.python.org/ftp/python/3.5.1/Python-3.5.1.tar.xz
2. 使用命令如下命令进行解压缩:

阅读全文>>

标签: linux python

评论(0) 浏览(10383)

Python Virtualenv 虚拟环境

2016-6-16 杜世伟 Python

什么是virtualenv?

virtualenv用于创建独立的Python环境,多个Python相互独立,互不影响,它能够:
1. 在没有权限的情况下安装新套件
2. 不同应用可以使用不同的套件版本
3. 套件升级不影响其他应用

阅读全文>>

标签: linux python Virtualenv

评论(0) 浏览(10847)

python paramiko模块

2016-3-20 杜世伟 Python

paramiko模块提供了ssh及sft进行远程登录服务器执行命令和上传下载文件的功能。这是一个第三方的软件包,使用之前需要安装。

1 基于用户名和密码的 sshclient 方式登录

# 建立一个sshclient对象
ssh = paramiko.SSHClient()
# 允许将信任的主机自动加入到host_allow 列表,此方法必须放在connect方法的前面
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
# 调用connect方法连接服务器
ssh.connect(hostname='192.168.2.129', port=22, username='super', password='super')
# 执行命令
stdin, stdout, stderr = ssh.exec_command('df -hl')
# 结果放到stdout中,如果有错误将放到stderr中
print(stdout.read().decode())
# 关闭连接
ssh.close()

阅读全文>>

标签: python paramiko ssh stp

评论(0) 浏览(12585)

python 字符串排序方法

2016-3-18 杜世伟 Python

python 字符串排序方法

一般情况下,python中对一个字符串排序相当麻烦:
1)python中的字符串类型是不允许直接改变元素的。必须先把要排序的字符串放在容器里,如list。
2)python中的list容器的sort()函数没返回值。
所以在python中对字符串排序往往需要好几行代码。

以下是总结python实现的字符串排序的方法,方法实现都是基于字符串name='python'进行字符串排序,输出结果为:dhnopty
方法一:
name='python'
lname=list(name) #把字符串强制转换为list
lname.sort() #通过list sort方法进行排序
name="".join(lname)
print(name)
#dhnopty

阅读全文>>

标签: linux python

评论(0) 浏览(5934)

python 文件操作方法

2016-3-1 杜世伟 Python

python 文件操作方法
 1 文件对象的方法 操作
 2 file.close() 关闭文件
 3 file.fileno() 返回文件的描述符(file descriptor ,FD, 整数值)
 4 file.flush() 刷新文件的内部缓冲区
 5 file.isatty() 判断 file 是否是一个类 tty 设备
 6 file.nexta() 返回文件的下一行(类似于 file.readline() ), 或在没有其它行时
 7 引发 StopIteration 异常
 8 file.read(size=-1) 从文件读取 size 个字节, 当未给定 size 或给定负值的时候, 读
 9 取剩余的所有字节, 然后作为字符串返回.如果打开模式无b,则read按字符读取,否则按字节读取
10 file.readline(size=-1) 从文件中读取并返回一行(包括行结束符), 或返回最大 size
11 file=open('test','ab')
12 file.write(bytes('hehe',encoding='utf-8')) 向文件写入字符串  (会覆盖原有数据,坑
13 file.close() 关闭文件
14 file.tell获取当前指针的位置
15 file.read()如果打开模式无b,则read按字符读取,否则按字节读取
16 file.fileno文件描述符
17 file.truncat 截断数据,清除文件指针之后的数据

阅读全文>>

标签: python open file

评论(0) 浏览(10060)

Powered by emlog 沪ICP备2023034538号-1