Socket的英文原义是“孔”或“插座”。作为BSDUNIX的进程通信机制,取后一种意思。通常也称作”套接字”,用于描述IP地址和端口,是一个通信链的句柄。在Internet上的主机一般运行了多个服务软件,同时提供几种服务。每种服务都打开一个Socket,并绑定到一个端口上,不同的端口对应于不同的服务。Socket正如其英文原意那样,像一个多孔插座。一台主机犹如布满各种插座的房间,每个插座有一个编号,有的插座提供220伏交流电,有的提供110伏交流电,有的
系统 2019-09-27 17:52:33 1788
由于工作的需求,需要用python做一个类似网络爬虫的采集器。虽然Python的urllib模块提供更加方便简洁操作,但是涉及到一些底层的需求,如手动设定User-Agent,Referer等,所以选择了直接用socket进行设计。当然,这样的话,需要对HTTP协议比较熟悉,HTTP协议这里就不做讲解了。整个python的代码如下:#!/usr/binenvpythonimportsockethost="www.baidu.com"se=socket.so
系统 2019-09-27 17:52:30 1788
Python中使用SSH需要用到OpenSSH,而OpenSSH依赖于paramiko模块,而paramiko模块又依赖于pycrypto模块,因此要在Python中使用SSH,则需要先安装模块顺序是:pycrypto->ecdsa->paramiko1、安装pyCrypto安装这个比较麻烦,需要本地编译,要装vs或gcc还有一堆配置,还不一定能编译成功。(网上能搜到安装步骤)建议直接下载已编译版:http://www.voidspace.org.uk/p
系统 2019-09-27 17:52:27 1788
目前,Python科学栈中的所有主要项目都同时支持Python3.x和Python2.7,不过,这种情况很快即将结束。去年11月,Numpy团队的一份声明引发了数据科学社区的关注:这一科学计算库即将放弃对于Python2.7的支持,全面转向Python3。Numpy并不是唯一宣称即将放弃Python旧版本支持的工具,pandas与Jupyternotebook等很多产品也在即将放弃支持的名单之中。对于数据科学开发者而言,如何将已有项目从Python2转向P
系统 2019-09-27 17:52:25 1788
基本常识python中的左位移和右位移利用Python在一个文件的头部插入数据withopen(path,"r+")asf:old=f.read()f.seek(0)f.write(data)f.write(old)Debugxpath中遇到[]AttributeError:‘dict’objecthasnoattribute‘iteritems’Python3.5中:iteritems变为items【Python】ufunc‘subtract’didno
系统 2019-09-27 17:52:10 1788
前言今天就简单的对日志做个封装,实际工作中直接拿去用吧方法1"""------------------------------------@Time:2019/5/228:12@Auth:linux超@File:logfile.py@IDE:PyCharm@Motto:Realwarriors,daretofacethebleakwarning,daretofacetheincisiveerror!-----------------------------
系统 2019-09-27 17:51:39 1788
目录一、插入排序二、冒泡排序三、快排(递归)四、选择排序生成一个长度为10的范围在0~20的随机数组importrandomtemp_list=[]whileTrue:num=random.randint(0,20)ifnumnotintemp_list:temp_list.append(num)iflen(temp_list)==10:breakprinttemp_list一、插入排序definsert(list):length=len(list)for
系统 2019-09-27 17:51:37 1788
基础元素学习一门编程语言的时候,我最先考虑的事情就是如何操作值,值(value)在程序组可以是一个数字1,2,3,4,字符'hello,word'.我们使用变量来保存这些值。又把变量保存的值成为对象,计算机会给变量的对象和变量分配内存空间。python使用的内存分配方式成为引用语义或者对象语义,而像c语言使用的时值语义。接下来具体说明一下这两种语义的区别。值语义:所谓值语义是指目标对象由源对象拷贝生成,且生成后与源对象完全无关,彼此独立存在,改变互不影响。
系统 2019-09-27 17:51:31 1788
目录条件判断if循环for...in...whilebreakcontinue继"Python学习之路二":条件判断if比如,输入用户年龄,根据年龄打印不同的内容,在Python程序中,用if语句实现:>>>age=18>>>ifage>=18:print("yourageis",age)print("adult")yourageis18adult>>>根据Python的缩进规则,如果if语句判断是True,就把缩进的两行print语句执行了,否则,什么也
系统 2019-09-27 17:51:22 1788
python修改大数据文件时,如果全加载到内存中,可能会导致内存溢出。因此可借用如下方法,将分件分段读取修改。withopen('file.txt','r')asold_file:withopen('file.txt','r+')asnew_file:current_line=0#定位到需要删除的行whilecurrent_line<(3-1):#(del_line-1)old_file.readline()current_line+=1#当前光标在被删除
系统 2019-09-27 17:51:18 1788