- 军军小站|张军博客
搜索到与相关的文章
Python

python爬虫---实现项目(一) Requests爬取HTML信息

上面的博客把基本的HTML解析库已经说完了,这次我们来给予几个实战的项目。这次主要用Requests库+正则表达式来解析HTML。项目一:爬取猫眼电影TOP100信息代码地址:https://gitee.com/dwyui/maoyan-Requests.git项目二:美食爬取(包含多层爬取)代码地址:https://gitee.com/dwyui/meishi_Requests.git

系统 2019-09-27 17:47:06 1763

Python

Python 转换文本编码实现解析

最近在做周报的时候,需要把csv文本中的数据提取出来制作表格后生产图表。在获取csv文本内容的时候,基本上都是用withopen(filename,encoding='UTF-8')asf:来打开csv文本,但是实际使用过程中发现有些csv文本并不是utf-8格式,从而导致程序在run的过程中报错,每次都需要手动去把该文本文件的编码格式修改成utf-8,再次来run该程序,所以想说:直接在程序中判断并修改文本编码。基本思路:先查找该文本是否是utf-8的编

系统 2019-09-27 17:46:34 1763

Python

Python中使用双下划线防止类属性被覆盖问题

在使用Python编写面向对象的代码时,我们会常常使用“继承”这种开发方式。例如下面这一段代码:classInfo:def__init__(self):passdefcalc_age(self):print('我是父类的方法')classPeopleInfo(Info):def__init__(self):super().__init__()defcalc_age(self):print(123456)如果你使用PeopleInfo初始化一个对象,然后调用

系统 2019-09-27 17:46:07 1763

Python

Python 爬虫的工具列表大全

网络通用urllib-网络库(stdlib)。requests-网络库。grab�C网络库(基于pycurl)。pycurl�C网络库(绑定libcurl)。urllib3�CPythonHTTP库,安全连接池、支持文件post、可用性高。httplib2�C网络库。RoboBrowser�C一个简单的、极具Python风格的Python库,无需独立的浏览器即可浏览网页。MechanicalSoup-一个与网站自动交互Python库。mechanize-有

系统 2019-09-27 17:38:25 1763

Python

python服务器端收发请求的实现代码

最近学习了python的一些服务器端编程,记录在此。发送get/post请求#coding:utf-8importhttplib,urllib#加载模块#urllib可以打开网站去拿#res=urllib.urlopen('http://baidu.com');#printres.headers#定义需要进行发送的数据params=urllib.urlencode({'param':'6'});#定义一些文件头headers={"Content-Type"

系统 2019-09-27 17:38:17 1763

Python

浅谈python对象数据的读写权限

面向对象的编程语言在写大型程序的的时候,往往比面向过程的语言用起来更方便,安全。其中原因之一在于:类机制。类,对众多的数据进行分类,封装,让一个数据对象成为一个完整的个体,贴近现实生活,高度抽象化。但是,python对类的封装并不好,因为所有的属性和方法都是公开的,你可以随意访问或者写入,你可以在类的外部对类的属性进行修改,甚至添加属性。这的确让人感到不安。下面就来总结一下学习后的解决方案。1,使用2个下划线前缀隐藏属性或者方法。__xxx#!/usr/b

系统 2019-09-27 17:38:12 1763

Python

浅谈python对象数据的读写权限

面向对象的编程语言在写大型程序的的时候,往往比面向过程的语言用起来更方便,安全。其中原因之一在于:类机制。类,对众多的数据进行分类,封装,让一个数据对象成为一个完整的个体,贴近现实生活,高度抽象化。但是,python对类的封装并不好,因为所有的属性和方法都是公开的,你可以随意访问或者写入,你可以在类的外部对类的属性进行修改,甚至添加属性。这的确让人感到不安。下面就来总结一下学习后的解决方案。1,使用2个下划线前缀隐藏属性或者方法。__xxx#!/usr/b

系统 2019-09-27 17:38:10 1763

Python

python append、extend与insert的区别

最近在自学Python语言,看到向列表增加更多数据时被append(),extend(),insert()方法绕晕了。append和extend都只需要一个参数,并且自动添加到数组末尾,如果需要添加多个,可用数组嵌套,但是append是将嵌套后的数组作为一个对象,extend是将嵌套的数组内容作为多个对象,添加到原数组中作为编程0基础的小白,觉得有必要自己再梳理一遍:1.append()方法是指在列表末尾增加一个数据项。例如:在students列表末尾增加

系统 2019-09-27 17:37:54 1763

Python

Python生成指定数量的优惠码实操内容

Python生成指定数量的优惠码打开Python开发工具IDLE,新建‘codeGen.py'文件,并保存导入需要的包,这里需要random和string,代码如下:importstringimportrandom假设需要生成200个,长度为10的优惠码,实际应用这个可以作为参数进来CODE_COUNT=200CODE_LEN=10设计的优惠码由字母和数字组成,通过下面函数获取所有字母和数字,字母区分大小写defstrall():return(string

系统 2019-09-27 17:37:48 1763

Python

详解Python的Django框架中Manager方法的使用

在语句Book.objects.all()中,objects是一个特殊的属性,需要通过它查询数据库。在第5章,我们只是简要地说这是模块的manager。现在是时候深入了解managers是什么和如何使用了。总之,模块manager是一个对象,Django模块通过它进行数据库查询。每个Django模块至少有一个manager,你可以创建自定义manager以定制数据库访问。下面是你创建自定义manager的两个原因:增加额外的manager方法,和/或修ma

系统 2019-09-27 17:37:39 1763