1.有道的翻译 网页:www.youdao.com Fig1 Fig2 Fig3 Fig4 再次点击"自动翻译"->选中'Network'->选中'第一项',如下: Fig5 然后显示出如下内容,红框画出的部分是等会编写代码需要的地方: Fig6 Fig7 再看看翻译的结果: Fig8 2.python实现英译汉: 原理:把需要翻译的内容输入给有道词典,然后通过程序把翻译的结果爬下来. # -*- coding:utf-8 -*- """ Cr…
抓包软件使用的是Fiddler4 新版的查询接口 比较负责,引入了salt和sign http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule&sessionFrom=http://fanyi.youdao.com/ 这里使用老版本的查询接口 http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule&smartresul…
作者:Grey 原文地址:ZooKeeper学习笔记三:使用ZooKeeper实现一个简单的配置中心 前置知识 完成ZooKeeper集群搭建以及熟悉ZooKeeperAPI基本使用 需求 很多程序往往是通过心跳检测来判断配置的变更,通过zk的回调机制,我们可以实现比心跳更为快速的配置检测机制,包括配置的新增,修改和删除 流程也比较简单: 环境准备 一个zk集权,ip和端口分别为: 192.168.205.145:2181 192.168.205.146:2181 192.168.205.147…
作者:Grey 原文地址: ZooKeeper学习笔记四:使用ZooKeeper实现一个简单的分布式锁 前置知识 完成ZooKeeper集群搭建以及熟悉ZooKeeperAPI基本使用 需求 当多个进程不在同一个系统中,用分布式锁控制多个进程对资源的访问. 在单机情况下,可以使用JUC包里面的工具来进行互斥控制. 但是在分布式系统后,由于分布式系统多线程.多进程并且分布在不同机器上,这将使原单机并发控制锁策略失效,为了解决这个问题就需要一种跨JVM的互斥机制来控制共享资源的访问,这就是分布式锁的…
1 urllib概述 1.1 urllib库中的模块类型 urllib是python内置的http请求库 其提供了如下功能: (1)error 异常处理模块 (2)parse url解析模块 (3)request 请求模块 (4)robotparser robots.txt解析模块 1.2 模块的引用方式 以下应用引用urllib库中的模块时均以 parse模块 为例 (1)引用方式一(正确) import urllib from urllib import parse (2)引用方式二(正确)…
Python中的网络编程比C语言中要简洁很多,毕竟封装了大量的细节. 所以这里不再介绍网络编程的基本知识.而且我认为,从Python学习网络编程不是一个明智的选择.   简单的TCP连接 服务器代码如下: import socket from time import ctime sock = socket.socket() sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) sock.bind(('localhost', 9981…
1 数据类型 网页中的数据类型可分为结构化数据.半结构化数据.非结构化数据三种 1.1 结构化数据 常见的是MySQL,表现为二维形式的数据 1.2 半结构化数据 是结构化数据的一种形式,并不符合关系型数据库或其他数据表的形式关联起来的数据模型结构,但包含相关标记,用来分隔语义元素以及对记录和字段进行分层.因此,它也被称为自描述的结构.常见的半结构数据有HTML,XML和JSON等,实际上是以树或者图的结构来存储的. <person> <name>A</name> &l…
1 深度优先算法 2 广度/宽度优先策略 3 完全二叉树遍历结果 深度优先遍历的结果:[1, 3, 5, 7, 9, 4, 12, 11, 2, 6, 14, 13, 8, 10] 广度优先遍历的结果:[1, 3, 2, 5, 4, 6, 8, 7, 9, 12, 11, 14, 13, 10] 4 实践中怎么来组合爬取策略 (1)一般来说,重要的网页距离入口站点的距离很近: (2)广度/宽度优先有利于多爬虫并行进行合作: (3)可以考虑将深度与广度/宽度相结合的方式来实现抓取的策略:优先考虑广…
要使用Python 抓取网页,首先我们要学习下面四个模块: 包 作用 webbrowser 打开浏览器获取指定页面: requests 从因特网下载文件和网页: Beautiful Soup 解析HTML,即网页编码的格式: selenium 启动并控制一个Web 浏览器,能够填写表单,并模拟鼠标点击. 小项目:利用webbrowser 模块的bilibiliSearch.py webbrowser 模块的open()函数可以启动一个新浏览器,打开指定的URL. import webbrowse…
想要快速的学会一个Python的模块和方法,两个函数必须要知道,那就是dir()和help() dir():能够快速的以集合的型式列出该模块下的所有内容(类.常量.方法)例: #--encoding:utf-8-- import os print dir(os) 结果: 结果:['F_OK', 'O_APPEND', 'O_BINARY', 'O_CREAT', 'O_EXCL', 'O_NOINHERIT', 'O_RANDOM', 'O_RDONLY', 'O_RDWR', 'O_SEQUE…