一、pthon 序列化json格式

1、将python内置对象转换成json 模块,dumps()方法返回的是一个str,内容是标准的JSON,dump()方法可以直接吧JSON写入一个file-like-object,要把JSON反序列化为python对象,使用loads()或者对立的方法,

2、多线程和多进程  (multiprocessing)

3、常见的模块

datetime模块包含一个datetime的类。通过 from datetime  import datetime 导入的才是datetime 这个类

from datetime import datetime       dt=datetime(215,4,15,21,12)  dt.timestamp()

collections模块  ,namedtuple是一个函数,它用来创建一个定义的tuple对象,规定了tuple的元素个数,并可以使用属性而不是缩影来引用tuple的元素。

from collextions import namedtuple      Point=namedtuple("Point",['x','y'])   p=Point(a,2)    p.x

deque函数,为了实高效的插入和删除双向列表,适合队列和栈:

from  collections import  deque      q=deque(['a','v','f'])   q.append('x')  q.appendleft('f')  deque 实现了appendleft() 和popleft()

defaultdict使用dict时如果 可以不存在,就会抛出keyError,

使用dict的时候。key是无序的 ,但是对dict做迭代,无法确定key的顺序,如果要保持key的顺序,使用OrderedDict

OrderedDict的key会按照插入的顺序排列,不是key本身排列

counter是一个简单的计数器,统计字符出现的个数

base64编码机制,标准的base64编码可能出现字符+ 或者—号,在URl中不允许出现,所以又有一种url safe的base64编码 把+ 或者-号编程-和_

struct模块提供了一个解决bytes其他二进制数据类型转换  ,struct的pack函数把任意的数据类型转换成bytes....。pack的第一个参数是处理指令,I表示4字节无符号整数,后面的参数个数和要处理的指令一致。unpack把bytes变成相应的数据类型

4、python提供了常见的MD5和SHA1 等算法,摘要算法又叫哈希算法 散列算法。它是把任意长度的数据转换成一个固定长度的数据通常用十六进制的字符串表示。摘要算法是通过摘要函数f() 对任意长度的数据data 计算出长度固定的digest目的就是防止原始数据被人篡改。,而且对原始数据做了一个bit的修改,就会导致计算出来摘要完全不同。

如果数据较大可以多次调用hashlib模块中的MD5函数计算结果是一样的。

5、python内的模块itertools提供了操作迭代对象的函数,

import itertools      naturals=itertools.count(1)

for n in naturals:     print(n)

因为count()函数会创建一个无限的迭代器,上述计算会无限的迭代下去。

另一个函数循环迭代的就是cycle()函数。

import  itertools

cs=itertools.sycle('ABC')

for c in cs:    print(c)   这样就会一直持续循环输出ABC

还有一个重复函数就是repeat函数。

ns=itertools.repeat('A',3)

for n in ns:

无限循环只有在for迭代时候才会无限制的迭代下去,如果只是创建一个迭代对象,他不会实现把无限个元素 生成出来,是时候是哪个也不会在内存中创建无限循环的元素,但是通常使用takewhile()函数对判断条件截取出一个有限的循环。

chain()函数可以把一组迭代对象串联起来,形成一个更大的迭代器。

groupby()函数把迭代器中相邻的重复的元素挑出来放到一起

6、contextlib模块, 在python中必须关闭文件,但是使用with参数就不用。

  1. try:
  2. f = open('/path/to/file', 'r')
  3. f.read()
  4. finally:
  5. if f:
  6. f.close()
  7.  
  8. 可以直接改写成这样的形式, with open('/path/file','r')as f: f.read() 就可以不必在担心文件的关闭

7、简单的网站抓取获得

要是伪装成一台iPhone6区访问网页抓取网页内容

模拟微博登陆

python网络爬虫笔记(八)的更多相关文章

  1. Python网络爬虫笔记(五):下载、分析京东P20销售数据

    (一)  分析网页 下载下面这个链接的销售数据 https://item.jd.com/6733026.html#comment 1.      翻页的时候,谷歌F12的Network页签可以看到下面 ...

  2. [Python]网络爬虫(八):糗事百科的网络爬虫(v0.2)源码及解析

    转自:http://blog.csdn.net/pleasecallmewhy/article/details/8932310 项目内容: 用Python写的糗事百科的网络爬虫. 使用方法: 新建一个 ...

  3. Python网络爬虫笔记(二):链接爬虫和下载限速

    (一)代码1(link_crawler()和get_links()实现链接爬虫) import urllib.request as ure import re import urllib.parse ...

  4. python网络爬虫笔记(九)

    4.1.1 urllib2 和urllib是两个不一样的模块 urllib2最简单的就是使用urllie2.urlopen函数使用如下 urllib2.urlopen(url[,data[,timeo ...

  5. python网络爬虫笔记(六)

    1.获取属性如果不存在就返回404,通过内置一系列函数,我们可以对任意python对象进行剖析,拿到其内部数据,但是要注意的是,只是在不知道对象信息的时候,我们可以获得对象的信息. 2.实例属性和类属 ...

  6. python网络爬虫笔记(五)

    一.python的类对象的继承 1.所有的父类都是object类,由于类可以起到模块的作用,因此,可以在创建实例的时候,巴西一些认为必须要绑定的属性填写上去,通过定义一个特殊的方法 __init__, ...

  7. python网络爬虫笔记(四)

    一.python中的高阶函数算法 1.sorted()函数的排序   sorted()函数是一个高阶函数,还可以接受一个key函数来实现自定义的函数排序,key指定的函数作用于每个序列元素上,并根据k ...

  8. python网络爬虫笔记(三)

    一.切片和迭代 1.列表生成式 2.生成器的generate,但是generate保存的是算法,所以可以迭代计算,没有必要,每次调用generate 二.iteration 循环 1.凡是作用于for ...

  9. python网络爬虫笔记(一)

    一.查询数据字典型数据 1.先说说dictionary查找和插入的速度极快,不会随着key的增加减慢速度,但是占用的内存大 2.list查找和插入的时间随着元素的增加而增加,但还是占用的空间小,内存浪 ...

随机推荐

  1. redis-deskmanager 连不上 虚拟机 - centos redis

    1.没设置redis密码 : https://blog.csdn.net/HUXU981598436/article/details/54668779 2.关闭防火墙

  2. mysql 开源 ~ canal+otter系列(1)

    一 简介: 今天咱们来聊聊 canal和otter的组合搭配吧二 概念统计   1. 基于Canal开源产品,获取数据库增量日志数据.   2. 典型管理系统架构,manager(web管理)+nod ...

  3. 原子类型的使用&Unsafe&CAS

    在项目中也经常可以见到原子类型(AtomicXXX)的使用,而且AtomicXXX常用来代替基本类型或者基本类型的包装类型,因为其可以在不加同步锁的情况下保证线程安全(只对于原子操作). 下面以Ato ...

  4. 2017-2018-2 20165325 实验四《Android程序设计》实验报告

    一.Android程序设计-1 1.检查点要求 Android Stuidio的安装测试: 参考<Java和Android开发学习指南(第二版)(EPUBIT,Java for Android ...

  5. python目标定位(借鉴csdn上大神)

    写博客是为了记录下来,毕竟好多东西记不住,看过就忘了,收藏又太多,还不如搬运到自己博客下面,随时可翻~~~ 近期再学目标识别与定位,看着原理都很简单,但是真自己做,又觉得困难重重. csdn上一个大神 ...

  6. zookeeper安装教程

    zookeeper  一.单机安装 1.1 下载 1.2 安装 1.3 配置 1.4 启动和停止 二.伪集群模式 2.1 zookeeper1配置 2.2 zookeeper2配置 2.3 zooke ...

  7. 向量的L2范数求导

    回归中最为基础的方法, 最小二乘法. \[ \begin{align*} J_{LS}{(\theta)} &= \frac { 1 }{ 2 } { \left\| A\vec { x } ...

  8. CAN总线芯片SN65HVD230QD介绍

    CAN总线硬件电路如上,采用芯片为SN65HVD230QD,从TI获得的芯片手册,可知该芯片参数为: 3.3V供电 低电流为370uA典型值

  9. Cascade R-CNN论文讲解(转载)

    转载链接:https://blog.csdn.net/qq_21949357/article/details/80046867 论文思想:为了解决IOU设置带来的最终的AP值,作者引入了cascade ...

  10. java 解压缩 中文名称问题

    public List<String> unZip(String pathString, String zipPathString) { long startTime = System.c ...