Python

python使用sessions模拟登录淘宝的方式

之前想爬取一些淘宝的数据,后来发现需要登录,找了很多的资料,有个使用request的sessions加上cookie来登录的,cookie的获取在登录后使用开发者工具可以找到。不过这个登录后获得的网页的代码是静态的,获取动态网页还得另寻他法,一般需要的数据可以在网页的源码中得到,但是你知道的,有些动态加载的就不是那么简单了,而且我发现这样获得的源码中,有些想要获取的数据的格式是经过改动的,比如我要某个商品的具体链接,发现并不能直接使用。总体而言,这是一次失

系统 2019-09-27 17:54:47 2123

Python

day005-python基础数据类型之课后作业讲解

1、元素的分类需求:有如下集合[11,22,33,44,55,66,77,88,99,90……],将所有大于66的值保存在字典的第一个key中,将小于66的值保存在第二个key的值中代码实现:1#定义一个list列表2li=[11,22,33,44,55,66,77,88,99,90]3#定义空字典4dic={"k1":[],"k2":[]}5foriinli:6ifi<=66:7dic['k1'].append(i)8else:9dic['k2'].ap

系统 2019-09-27 17:54:43 2123

Python

Python文件IO

使用open函数,第一个参数为文件名,例如“C:\abc.txt”,这里要注意的是r“C:\abc.txt”。第二个参数为文件的操作方式,这里着重探讨写入,写入主要分为覆盖写入和追加写入。#覆盖写入例子:file=open(r'C:\abc.txt','w')file.write("abc")#写入字符串file.close#关闭文件#追加写入例子:file=open(r'C:\abc.txt','a')file.write("abc")#写入字符串fil

系统 2019-09-27 17:53:29 2123

Python

python 并发编程 非阻塞IO模型原理解析

非阻塞IO(non-blockingIO)Linux下,可以通过设置socket使其变为non-blocking。当对一个non-blockingsocket执行读操作时,流程是这个样子:从图中可以看出,当用户进程发出read操作时,如果kernel中的数据还没有准备好,那么它并不会block用户进程,而是立刻返回一个error。从用户进程角度讲,它发起一个read操作后,并不需要等待,而是马上就得到了一个结果。用户进程判断结果是一个error时,它就知道

系统 2019-09-27 17:53:07 2123

Python

python binascii 进制转换实例

如下所示:#coding:utf-8importbinasciia='worker'#先把worker转换成二进制数据然后在用十六进制表示b=binascii.b2a_hex(a)printb#与b2a_hex相反printbinascii.a2b_hex(b)#这个功能和b2a_hex()一样c=binascii.hexlify(a)printc#这个功能和a2b_hex()一样printbinascii.unhexlify(c)######运行结果##

系统 2019-09-27 17:52:56 2123

Python

Python 命令行之旅:使用 argparse 实现 git 命令

作者:HelloGitHub-ProdesireHelloGitHub的《讲解开源项目》系列,项目地址:https://github.com/HelloGitHub-Team/Article前言在前面三篇介绍argparse的文章中,我们全面了解了argparse的能力,相信不少小伙伴们都已经摩拳擦掌,想要打造一个属于自己的命令行工具。本文将以我们日常工作中最常见的git命令为例,讲解如何使用argparse库来实现一个真正可用的命令行程序。本系列文章默认

系统 2019-09-27 17:52:35 2123

Python

python实现动态数组的示例代码

实现一个支持动态扩容的数组并完成其增删改查#通过python实现动态数组"""数组特点:占用一段连续的内存空间,支持随机(索引)访问,且时间复杂度为O(1)添加元素时间复杂度:O(n)删除元素时间复杂度:O(n)"""classArr:def__init__(self,capacity=10):"""构造函数:paramcapacity:数组最大容量,不指定的话默认为10"""self._capacity=capacityself._size=0#数组有效

系统 2019-09-27 17:52:16 2123

Python

Python中实现结构相似的函数调用方法

python的dict用起来很方便,可以自定义key值,并通过下标访问,示例如下:复制代码代码如下:>>>d={'key1':'value1',...'key2':'value2',...'key3':'value3'}>>>printd['key2']value2>>>lambda表达式也是很实用的东东,示例如下:复制代码代码如下:>>>f=lambdax:x**2>>>printf(2)4>>>两者结合可以实现结构相似的函数调用,使用起来很方便,示例如

系统 2019-09-27 17:51:38 2123

Python

python网络爬虫原理

爬虫即网络爬虫,英文是WebSpider。翻译过来就是网络上爬行的蜘蛛,如果把互联网看作一张大网,那么爬虫就是在大网上爬来爬去的蜘蛛,碰到想要的食物,就把他抓取出来。我们在浏览器中输入一个网址,敲击回车,看到网站的页面信息。这就是浏览器请求了网站的服务器,获取到网络资源。那么,爬虫也相当于模拟浏览器发送请求,获得到HTML代码。HTML代码里通常包含了标签和文字信息,我们就从中提取到我们想要的信息。通常爬虫是从某个网站的某个页面开始,爬取这个页面的内容,找

系统 2019-09-27 17:51:07 2123

Python

python的模块和包的概念以及各自的导入方式

模块Module定义包含一系列数据、函数、类的文件,通常以.py结尾。作用让一些相关的数据,函数,类有逻辑的组织在一起,使逻辑结构更加清晰。有利于多人合作开发。导入import1.语法:import模块名import模块名as别名2.作用:将某模块整体导入到当前模块中3.使用:模块名.成员fromimport1.语法:from模块名import成员名[as别名1]作用:将模块内的一个或多个成员导入到当前模块的作用域中。fromimport*1.语法:fro

系统 2019-09-27 17:51:00 2123

Python

Python多线程编程(一):threading模块综述

Python这门解释性语言也有专门的线程模型,Python虚拟机使用GIL(GlobalInterpreterLock,全局解释器锁)来互斥线程对共享资源的访问,但暂时无法利用多处理器的优势。在Python中我们主要是通过thread和threading这两个模块来实现的,其中Python的threading模块是对thread做了一些包装的,可以更加方便的被使用,所以我们使用threading模块实现多线程编程。这篇文章我们主要来看看Python对多线程

系统 2019-09-27 17:51:00 2123

Python

Python web框架:flask路由系统

1.可传入参数:@app.route('/user/')#常用的不加参数的时候默认是字符串形式的@app.route('/post/')#常用的#指定int,说明是整型的@app.route('/post/')@app.route('/post/')@app.route('/login',methods=['GET','POST'])DEFAULT_CONVERTERS={'default':UnicodeConverter,'string':Unicod

系统 2019-09-27 17:49:32 2123

Python

[python numpy] numpy布尔值索引 数组索引

更详细见:https://blog.csdn.net/Lord_sh/article/details/92653790>>>x=np.arange(0,16).reshape(4,4)>>>xarray([[0,1,2,3],[4,5,6,7],[8,9,10,11],[12,13,14,15]])>>>idx=[[1,0,0,0],[0,1,0,0],[0,1,0,0],[0,0,0,1]]>>>idx[[1,0,0,0],[0,1,0,0],[0,1,

系统 2019-09-27 17:49:14 2123

Python

python基础学习笔记(二)

python基础学习笔记(二)2013-02-2416:25虫师阅读(...)评论(...)编辑收藏继续第一篇的内容,讲解,python的一些基本的东西。注释为了让别人能够更容易理解程序,使用注释是非常有效的,即使是自己回头再看旧代码也是一样。>>>#获得用户名:>>>user_name=raw_input("whatisyourname?")在python中用井号(#)表示注释。井号(#)右边的内存将不被程序执行。即使没有注释,也应该让代码本身易于理解。

系统 2019-09-27 17:48:56 2123

Python

Swift 势必取代 Python?

@开发者,如果你正在研究深度学习,那么建议你开始学习Swift语言。作者|MaxPechyonkin译者|弯月,责编|郭芮出品|CSDN(ID:CSDNnews)以下为译文:当程序员听到Swift时,可能都会联想到iOS或MacOS的应用开发。如果你正在研究深度学习,那么你一定听说过Swift版的TensorFlow。你可能不禁想问:“为什么Google会创建Swift版的TensorFlow?现在已经有Python和C++版本了,为什么还要添加另一种语言

系统 2019-09-27 17:47:41 2123