自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(42)
  • 收藏
  • 关注

转载 python之线程

概念线程是多任务编程方式之一,可以使用计算机的多核资源。线程又称为轻量级的进程,在并发执行上和进程相同。但是一个进程中可以包含多个线程,这些线程共享线程的运行环境。线程和进程的比较:1 进程的创建开销大,而线程的创建开销小。2 进程间的资源共享,只能通过进程间通信。而同一进程下线程间的资源共享,就像使用全局变量一样。3 多个功能独立的程序需要成为不同的进程。而不能...

2019-04-27 23:34:00 147

转载 初试PySnooper

Pysooper是什么?我们写代码会经常出现bug,有的人会使用断点调试器,但是设置这样的断点调试器是花时间的。所以很多人会在可能出现错误的地方print打印来输出语句。Pysooper的作用有点类似,你不必小心谨慎的使用print语句,只需要在想要调试的函数中引入一个装饰器。就可以得到函数的详细日志,包括运行了那些行,何时运行,以及何时更改了局部变量。使用示例写一个...

2019-04-25 17:48:00 149

转载 爬虫框架之Scrapy(三 CrawlSpider)

如何爬取一个网站的全站数据?可以使用Scrapy中基于Spider的递归方式进行爬取(Request模块回调parse方法)还有一种更高效的方法,就是基于CrawlSpider的自动爬取实现简介CrawlSpider其实是Spider的一个子类,除了继承到Spider的特性和功能外,还派生出了自己独有的强大功能和特性,其中最有名的就是"LInkExtractors"链接提...

2019-04-25 16:52:00 168

转载 爬虫框架之Scrapy(二)

递归解析糗事百科递归解析在前面的例子里只是爬取了糗事百科热门的第一个页面,但是当我们需要爬取更多的页面时,需要对每个页面的url依次发起请求,然后通过解析的方法进行作者和标题的解析。我们可以构建一个url列表,放进去所有页面的url,但是这样是不推荐的。我们也可以通过requests的方法来手动解析,然后来使用递归的思想来编写程序。比如:糗事百科首页的页码...

2019-04-24 12:11:00 143

转载 爬虫框架之Scrapy(一)

scrapy简介scrapy是一个用python实现为了爬取网站数据,提取结构性数据而编写的应用框架,功能非常的强大。scrapy常应用在包括数据挖掘,信息处理或者储存历史数据的一系列程序中。scrapy框架图绿线是数据流向Scrapy Engine(引擎):负责Spiders、Item Pipeline,Downloader、Scheduler中间的通信、...

2019-04-23 13:09:00 306

转载 selenium+谷歌无头浏览器爬取网易新闻国内板块

网页分析首先来看下要爬取的网站的页面查看网页源代码:你会发现它是由js动态加载显示的所以采用selenium+谷歌无头浏览器来爬取它1 加载网站,并拖动到底,发现其还有个加载更多2 模拟点击它,然后再次拖动到底,,就可以加载完整个页面示例代码from selenium import webdriverfrom selenium.webd...

2019-04-21 22:23:00 246

转载 python爬虫之selenium、phantomJs

图片懒加载技术什么是图片懒加载技术图片懒加载是一种网页优化技术。图片作为一种网络资源,在被请求时也与普通静态资源一样,将占用网络资源,而一次性将整个页面的所有图片加载完,将大大增加页面的首屏加载时间。为了解决这种问题,通过前后端配合,使图片仅在浏览器当前视窗内出现时才加载该图片,达到减少首屏图片请求数的技术就被称为“图片懒加载”。如何实现图片懒加载技术在网页源码中,在im...

2019-04-21 12:04:00 402

转载 python爬虫数据解析之BeautifulSoup

BeautifulSoup是一个可以从HTML或者XML文件中提取数据的python库。它能够通过你喜欢的转换器实现惯用的文档导航,查找,修改文档的方式。BeautfulSoup是python爬虫三大解析方法之一。首先来看个例子:from bs4 import BeautifulSouphtml_doc = """<html><head&gt...

2019-04-19 17:50:00 364

转载 python爬虫数据解析之xpath

xpath是一门在xml文档中查找信息的语言。xpath可以用来在xml文档中对元素和属性进行遍历。在xpath中,有7中类型的节点,元素,属性,文本,命名空间,处理指令,注释及根节点。节点首先看下面例子:<?xml version="1.0" encoding="ISO-8859-1"?><bookstore><book...

2019-04-18 14:13:00 220

转载 python爬虫数据解析之正则表达式

爬虫的一般分为四步,第二个步骤就是对爬取的数据进行解析。python爬虫一般使用三种解析方式,一正则表达式,二xpath,三BeautifulSoup。这篇博客主要记录下正则表达式的使用。正则表达式 .匹配除“\n”之外的任何单个字符。* 匹配前面的子表达式零次或者多次。+ 匹配前面的子表达式一次或者多次。...

2019-04-18 12:52:00 781

转载 python requests模块

什么是requests模块 了解爬虫的人都知道,爬虫总共分为四部分,发送请求,获取响应,解析数据,保存数据,发送请求可能是爬虫的起点,或者说是第一步,更是重点。而requests模块是python中基于网络请求的模块,或者可以说是发送请求的模块,它通过模拟浏览器发起请求,虽然它的语法相对比较简单,但是它的功能却是十分的强大。在python3...

2019-04-17 22:17:00 154

转载 python 模拟豆瓣登录(豆瓣6.0)

最近在学习python爬虫,看到网上有很多关于模拟豆瓣登录的例子,随意找了一个试了下,发现不能运行,对比了一下代码和豆瓣网站,发现原来是豆瓣网站做了修改,增加了反爬措施。首先看下要模拟登录的网站:打开开发者模式:在账号和密码随意填入数据:发现会发送一个post请求:ur是:https://accounts.douban.com/j/mobile/lo...

2019-04-17 12:32:00 331

转载 python 抓取糗事百科糗图

1 首先看下要抓取的页面这是糗事百科里面的糗图页面,每一页里面有很多的图片,我们要做的就是把这些图片抓取下来。2 分析网页源代码发现源代码里面的每张图是这样储存的,所以决定使用正则匹配出图片的url,然后下载下来。3 编写程序import requestsimport reimport osdef main(): url = 'h...

2019-04-16 15:59:00 252

转载 python bz2模块

bz2模块提供了使用bzip2算法压缩和解压缩数据一套完整的接口。bz2模块包括: 用于读写压缩文件的open()函数和BZ2File类 用于一次性压缩和解压缩的compress()和decompress()函数 用于增量压缩和解压的BZ2Compressor和BZ2Decompressor类文件压缩和解压bz2.open(filename,mod...

2019-04-15 11:32:00 1942

转载 the python challenge闯关记录(9-16)

9 第九关是一张图,上面有很多的黑点,查看网页源代码发现了上一关的提示:还发现了一大串的数字感觉又是一个使用PIL库进行图像处理的题,百度后知道要将这些点连接起来并重新画图。但是不能在原始图上修改,我们应该重新画图并进行修改。编写代码:from PIL import Imagedef main(three): img = Image...

2019-04-14 23:33:00 187

转载 python之PIL库(Image模块)

PIL(Python Image Library)是python的第三方图像处理库,PIL的功能非常的强大,几乎被认定是Python的官方图像处理库了。由于PIL仅支持到python2.7于是一群志愿者在PIL的基础上创建了兼容的版本,名字叫Pillow,支持最新的python3,而且扩容了很多特性,所以在python3我们可以直接安装Pillow。我们可以去官网查看它的资料:h...

2019-04-12 21:52:00 1308

转载 python之zipfile

1 简述zip文件是一个常用的归档和与压缩标准。zipfile模块提供了创建、读取、写入、添加及列出zip文件的工具。zipfile里有2个非常常用的class,分别是Zipfile和ZipInfo,在绝大多数情况下,我们只需要使用这2个class就可以了。Zipfile是主要的类,用于创建和读取zip文件,而ZipInfo是储存zip文件每个信息的。2 Zipfile基本操作...

2019-04-12 13:13:00 101

转载 python之pickle模块

1 概念pickle是python语言的标准模块,安装python后以包含pickle库,不需要再单独安装。pickle提供了一种简单的持久化功能,可以将对象以文件的形式存放在磁盘上。pickle模块用于实现序列化和反序列化。pickle模块是以二进制的形式序列化后保存到文件中(保存文件的后缀为”.pkl”),不能直接打开进行预览。pickle模块的接口主要有两类,即...

2019-04-11 18:07:00 88

转载 the python challenge闯关记录(0-8)

0 第零关2**38 =274877906944下一关的url:http://www.pythonchallenge.com/pc/def/274877906944.html1 第一关移位计算,可以看出来是移动2位def trans_str(s): inword = 'abcdefghijklmnopqrstuvwxyz' ou...

2019-04-10 23:05:00 341

转载 python爬取猫眼电影top100

最近想研究下python爬虫,于是就找了些练习项目试试手,熟悉一下,猫眼电影可能就是那种最简单的了。1 看下猫眼电影的top100页面分了10页,url为:https://maoyan.com/board/4?offset=0我们发起请求,得到相应:我们我使用的是requests库,这是一个第三方的库。2 利用正则解析爬取下的页面当然你也可以使用xpath...

2019-04-09 23:13:00 340

转载 python之协程

概念 协程,英文为coroutine,又称微线程,纤程,是一种用户态的轻量级线程。子程序,或者称为函数,在所有语言中都是层级调用,比如A调用B,B在执行过程中又调用了C,C执行...

2019-04-02 19:09:00 60

转载 python Event_loop(事件循环)

由于GIL全局解释器锁的存在,意味着在任何一个时刻,只有一个线程处于执行状态。(1)执行栈:因为python是单线程的,同一时间只能执行一个方法,所以当一系列的方法被依次调用的时候,python会先解析这些方法,把其中的同步任务按照执行顺序排队到一个地方,这个地方叫做执行栈。(2)事件队列(任务队列):主线程之外,还存在一个"任务队列"(task queue)。当遇...

2019-04-01 23:00:00 1991

转载 python面试中被问的最多的10道题

1 性能: 解析下面代码慢在哪里def strtest1(num):str='first'for i in range(num):str+="X"return str解析:python中str是一个不可变类型,每次迭代,都会生成一个新的str来储存对象,当num特别大的时候,就会创建很多的str,所有对内存的占用也会特别的大。2 闭包:写一个函数,接收整数参数n,返回一个函数,函数的功能...

2019-04-01 18:55:00 127

转载 python之asyncio

asyncio是Python 3.4版本引入的标准库,直接内置了对异步IO的支持。asnycio是用来编写并发代码的库,python3.5以后使用async/await语法。asyncio被用作多个提供高性能 Python 异步框架的基础,包括网络和网站服务,数据库连接库,分布式任务队列等等。asyncio往往是构建 IO 密集型和高层级结构化网络代码的最佳选择。...

2019-04-01 14:26:00 134

转载 python之进程

1 概念进程:程序执行一次的过程。是程序被读取到内存之中,被操作系统调用时开始生命周期,执行结束即结束生命周期,是一个过程。进程是战占有cpu和内存的。在linux系统下,创建进程会自动在系统下生成一个PCB(进程控制块)。PCB:内存中的一小块空间,用来记录进程的各种信息,包括pid,name,调度信息,优先级,状态,虚拟地址等。pid:操作系统中每一个进程都有唯一的i...

2019-03-29 19:26:00 167

转载 mysql怎么限制ip访问

grant all privileges on *.* to 'root'@'ip'identified by '密码'; #授权某个ip的用户可以通过密码访问数据库转载于:https://www.cnblogs.com/xiaozx/p/10606473.html

2019-03-27 11:45:00 1598

转载 记录python题

def mone_sorted(itera): new_itera = [] while itera: min_value = min(itera) new_itera.append(min_value) itera.remove(min_value)  return new_iteraif __nam...

2019-03-22 13:24:00 276

转载 常见的anaconda的操作

以前对anaconda的理解比较少,以为它就是一个比较大的python库,现在发现它原来不止是这样,它还有很多其他用途。Anaconda指的是一个开源的Python发行版本,其包含了conda、Python等180多个科学包及其依赖项。因为包含了大量的科学包,Anaconda 的下载文件比较大(约 531 MB),如果只需要某些包,或者需要节省带宽或存储空间,也可以使用Minico...

2019-03-20 21:51:00 165

转载 pycharm删除project

1 在pycharm里面选择关闭project2 返回到这个页面,然后点×让project不在project列表显示(最好记住project的位置)3 到源文件夹删除这个project文件夹大功告,就删除了这个project。转载于:https://www.cnblogs.com/xiaozx/p/10563864.html...

2019-03-20 11:32:00 3199

转载 了解django部署(Django + Uwsgi + Nginx)

首先了解下基本概念:  1 WSGI  WSGI:全称是Web Server Gateway Interface,是python应用程序或者框架和web服务器之间的一种接口,被广泛接受。WSGI不是服务器,python模块,框架,api或者任何软件,它更像是一种规范。描述web server如何和web application通信的规范。要实现WSGI协议,必须同时实现web s...

2019-03-19 18:24:00 102

转载 常见排序算法整理(python实现 持续更新)

1 快速排序  快速排序是对冒泡排序的一种改进。  它的基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。 比如:    以最后一个数字4 为基准数,将比4小的数字放到左边,比4大的数字放...

2019-03-14 15:19:00 71

转载 django 中间件

概念中间件是django进行请求/响应处理的钩子框架。它是一个轻量级,低级的‘插件’系统,用于全局改变django的输入和输出。每一个中间件负责做一些特定的功能。说白了中间件就是可以使我们在执行视图函数之前或者之后都可以进行一些额外的操作。它的本质就一个自定义类,其中定义了几种方法,django框架会在特定的时间去执行这些方法。由于其是影响全局的,所以要谨慎使用,使用不当...

2019-03-12 11:52:00 79

转载 django(2.1) url

函数path()  1参数route:是一个匹配url的准则,这些准则不会匹配get或者post参数或者域名.  2参数view:当django找到了一个匹配准则,就会调用这个特定的视图函数,并传入一个httprequest对象作为第一个参数,别捕获的参数以关键字参数的形式传入.  3参数kwargs:任意关键字参数可以作为一个字典传递给目标视图函数。  4参数name:...

2019-03-07 14:37:00 134

转载 django settings

Django的settings文件包含Django应用的所有配置项。因为配置文件是Python模块,所以要注意以下几项:不能有Python语法错误可以用Python语法实现动态配置,例如:MY_SETTING = [str(i) for i in range(30)]可以从其他配置文件中引入变量指定配置文件使...

2019-03-05 16:35:00 76

转载 python 字符串拼接

str1 = 'abc'str2 = 'def'str3 = str1 + str2print(str3)这种方法只需要申请一次内存。转载于:https://www.cnblogs.com/xiaozx/p/10468230.html

2019-03-03 22:47:00 77

转载 python 反转一个字符串

old_str = 'abcd'new_str1 = old_str[::-1]print(new_str1)new_str2 = ''.join(reversed(old_str))print(new_str2)转载于:https://www.cnblogs.com/xiaozx/p/10458800.html

2019-03-01 21:14:00 99

转载 python 按照一个字典的值来对这个字典进行排序

old_dic = {'a':6, 'b':3, 'c':2, 'd':4, 'e':5, 'f':1}new_dic = sorted(old_dic.items(), key=lambda d:d[1])print(new_dic)x = zip(old_dic.values(), old_dic.keys())y = sorted(x)print(list(y))转载于:htt...

2019-03-01 21:08:00 291

转载 python 将一个列表去重,并且不打乱它原有的排列顺序

old_lst = [2, 2, 1, 1, 3, 4]new_lst = list(set(old_lst))new_lst.sort(key=old_lst.index)print(new_lst)new_lst1 = []for i in old_lst: if i not in new_lst1: new_lst1.appe...

2019-03-01 20:48:00 637

转载 python 输入一个字符串,打印出它所有的组合

import itertoolsstr = input('请输入一个字符串:')lst = []for i in range(1, len(str)+1): lst1 = [''.join(x) for x in itertools.permutations(str, i)] lst += lst1print(lst)主要使用的it...

2019-03-01 20:44:00 2283

转载 知识点积累2

51 ajax 异步的javascript和xml52 什么是分布式的爬虫53 itertools模块 1354 with语句55 从输入url到返回一个界面,这其中发生了什么?(和43是另一种风格)56 ip地址的类别57 http响应码(补充14)58 http请求get和post的区别59 http的其他请求方式60 socket tcp htt...

2019-02-28 19:18:00 61

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除