上一页 1 ··· 4 5 6 7 8 9 10 11 12 ··· 16 下一页
摘要: 至于安装教程在这里不再重复说了,可以参考博客,网上有大把的教程 https://blog.csdn.net/testcs_dn/article/details/78697730 要是别的验证码是如下类型的 Python 代码如下 阅读全文
posted @ 2017-12-28 14:41 淋哥 阅读(672) 评论(1) 推荐(0) 编辑
摘要: Python+Tensorflow的CNN技术快速识别验证码 文章来源于: https://www.jianshu.com/p/26ff7b9075a1 验证码处理的流程是:验证码分析和处理—— tensorflow安装 —— 模型训练 —— 模型预测 需要的准备。 1. 安装TensorFlow 阅读全文
posted @ 2017-12-28 14:30 淋哥 阅读(1494) 评论(1) 推荐(0) 编辑
摘要: 今天要聊的就是在爬虫遇到验证码,如何去解决。 1.前言:关于验证码,我觉得是很low逼的技术,但是很多面试官都会问到如何解决验证码,好像是能识别验证的就代表了爬虫工程师的技术很牛逼,相反,爬虫工程师就是菜鸟。我觉得以此来评价爬虫工程师的水平高低,是非常不合理的。 2. 网站为何要用验证码? 网站担心 阅读全文
posted @ 2017-12-28 14:30 淋哥 阅读(5076) 评论(1) 推荐(0) 编辑
摘要: 有时候我们需要清洗数据,里面有超链接,怎么去掉他们,比如下面的问题 第一种方法: 用这则替换,把 href 替换为 hre1f 就可以了, 第二种方法: 记录下来,供以后学习参考 阅读全文
posted @ 2017-12-28 14:29 淋哥 阅读(3982) 评论(0) 推荐(0) 编辑
摘要: 在我们使用Python + selenium 爬虫的时候,会遇到如下报错,原因是 当页面上的元素超过一屏后,想操作屏幕下方的元素,是不能直接定位到,会报元素不可见的。 这时候需要借助滚动条来拖动屏幕,使被操作的元素显示在当前的屏幕上。滚动条是无法直接用定位工具来定位的。selenium里面也没有直接 阅读全文
posted @ 2017-12-28 14:29 淋哥 阅读(1451) 评论(0) 推荐(0) 编辑
摘要: 1. 测试页面是 https://www.hao123.com/,这个是百度的导航 2. 为了避免网络请求带来的差异,我们把网页下载下来,命名为html,不粘贴其代码。 3.测试办法: 我们在页面中找到 百度新闻 关键字的链接,为了能更好的对比,使程序运行10000次,比较时间差异: 1.正则编码及 阅读全文
posted @ 2017-12-21 11:08 淋哥 阅读(2881) 评论(0) 推荐(0) 编辑
摘要: 1. 问题描述 在做爬虫的时候,数据量很大,大约有五百百万条数据,假设有个字段是conmany_name(拍卖公司名称),我们现在需要从五百万条数据里面查找出来五十家拍卖公司, 并且要求字段 time(时间) 大于7月一号,小于10月31号。 2. 问题解决 我们首先想到的解决办法是添加索引,对拍卖公司字段添加索引,但是因为日期是大于7月1号,小于10月31号,在... 阅读全文
posted @ 2017-12-19 15:54 淋哥 阅读(1181) 评论(0) 推荐(0) 编辑
摘要: 当我们提到一门编程语言的效率时:通常有两层意思,第一是开发效率,这是对程序员而言,完成编码所需要的时间;另一个是运行效率,这是对计算机而言,完成计算任务所需要的时间。编码效率和运行效率往往是鱼与熊掌的关系,是很难同时兼顾的。不同的语言会有不同的侧重,python语言毫无疑问更在乎编码效率,life 阅读全文
posted @ 2017-11-30 11:27 淋哥 阅读(18965) 评论(1) 推荐(1) 编辑
摘要: 遇到的问题是:爬取网页得到的结果如下(部分) 里面的中文出现乱码。 这是 结果: 阅读全文
posted @ 2017-11-10 15:32 淋哥 阅读(2064) 评论(0) 推荐(0) 编辑
摘要: ==signal 模块== 你可以使用 ``signal`` 模块配置你自己的信号处理器 (signal handler), 如 [Example 3-11 #eg-3-11] 所示. 当解释器收到某个信号时, 信号处理器会立即执行. ====Example 3-11. 使用 signal 模块====[eg-3-11] ``` File: signal-example-1.py ... 阅读全文
posted @ 2017-11-04 22:05 淋哥 阅读(1152) 评论(0) 推荐(0) 编辑
摘要: ==popen2 模块== ``popen2`` 模块允许你执行外部命令, 并通过流来分别访问它的 ``stdin`` 和 ``stdout`` ( 可能还有 ``stderr`` ). 在 python 1.5.2 以及之前版本, 该模块只存在于 Unix 平台上. 2.0 后, Windows 下也实现了该函数. [Example 3-9 #eg-3-9] 展示了如何使用该模块来给... 阅读全文
posted @ 2017-11-04 22:04 淋哥 阅读(1866) 评论(0) 推荐(1) 编辑
摘要: ==pipes 模块== (只用于 Unix) ``pipes`` 模块提供了 "转换管道 (conversion pipelines)" 的支持. 你可以创建包含许多外部工具调用的管道来处理多个文件. 如 [Example 3-8 #eg-3-8] 所示. ====Example 3-8. 使用 pipes 模块====[eg-3-8] ``` File: pipes-exampl... 阅读全文
posted @ 2017-11-04 22:03 淋哥 阅读(2144) 评论(0) 推荐(0) 编辑
摘要: ==commands 模块== (只用于 Unix) ``commands`` 模块包含一些用于执行外部命令的函数. [Example 3-7 #eg-3-7] 展示了这个模块. ====Example 3-7. 使用 commands 模块====[eg-3-7] ``` File: commands-example-1.py import commands stat, outp... 阅读全文
posted @ 2017-11-04 22:02 淋哥 阅读(833) 评论(0) 推荐(0) 编辑
摘要: ?==thread 模块== (可选) ``thread`` 模块提为线程提供了一个低级 (low_level) 的接口, 如 [Example 3-6 #eg-3-6] 所示. 只有你在编译解释器时打开了线程支持才可以使用它. 如果没有特殊需要, 最好使用高级接口 ``threading`` 模块替代. ====Example 3-6. 使用 thread 模块====[eg-3-6... 阅读全文
posted @ 2017-11-04 22:01 淋哥 阅读(875) 评论(0) 推荐(0) 编辑
摘要: Queue 模块 ``Queue`` 模块提供了一个线程安全的队列 (queue) 实现, 如 [Example 3-2 #eg-3-2] 所示. 你可以通过它在多个线程里安全访问同个对象. ====Example 3-2. 使用 Queue 模块====[eg-3-2] ``` File: queue-example-1.py import threading import Que... 阅读全文
posted @ 2017-11-04 21:59 淋哥 阅读(1713) 评论(0) 推荐(0) 编辑
摘要: threading 模块 (可选) ``threading`` 模块为线程提供了一个高级接口, 如 [Example 3-1 #eg-3-1] 所示. 它源自 Java 的线程实现. 和低级的 ``thread`` 模块相同, 只有你在编译解释器时打开了线程支持才可以使用它 . 你只需要继承 //Thread// 类, 定义好 ``run`` 方法, 就可以创建一 个新的线程. 使用时... 阅读全文
posted @ 2017-11-04 21:57 淋哥 阅读(1080) 评论(0) 推荐(0) 编辑
摘要: ==code 模块== ``code`` 模块提供了一些用于模拟标准交互解释器行为的函数. ``compile_command`` 与内建 ``compile`` 函数行为相似, 但它会通过测试来保证你传递的是一个完成的 Python 语句. 在 [Example 2-47 #eg-2-47] 中, 我们一行一行地编译一个程序, 编译完成后会执行所得到的代码对象 (code objec... 阅读全文
posted @ 2017-10-31 21:31 淋哥 阅读(4573) 评论(0) 推荐(0) 编辑
摘要: ==zlib 模块== (可选) ``zlib`` 模块为 "zlib" 压缩提供支持. (这种压缩方法是 "deflate".) [Example 2-43 #eg-2-43] 展示了如何使用 ``compress`` 和 ``decompress`` 函数接受字符串参数. ====Example 2-43. 使用 zlib 模块压缩字符串====[eg-2-43] ``` Fil... 阅读全文
posted @ 2017-10-31 21:30 淋哥 阅读(10092) 评论(0) 推荐(1) 编辑
摘要: ==sha 模块== ``sha`` 模块提供了计算信息摘要(密文)的另种方法, 如 [Example 2-39 #eg-2-39] 所示. 它与 ``md5`` 模块类似, 但生成的是 160 位签名. ====Example 2-39. 使用 sha 模块====[eg-2-39] ``` File: sha-example-1.py import sha hash = sha... 阅读全文
posted @ 2017-10-31 21:16 淋哥 阅读(2086) 评论(0) 推荐(0) 编辑
摘要: ==md5 模块== ``md5`` (Message-Digest Algorithm 5)模块用于计算信息密文(信息摘要). ``md5`` 算法计算一个强壮的128位密文. 这意味着如果两个字符串是不同的, 那么有极高可能它们的 ``md5`` 也不同. 也就是说, 给定一个 ``md5`` 密文, 那么几乎没有可能再找到另个字符串的密文与此相同. [Example 2-35 #... 阅读全文
posted @ 2017-10-31 21:15 淋哥 阅读(2839) 评论(0) 推荐(2) 编辑
摘要: ==random 模块== "Anyone who considers arithmetical methods of producing random digits is, of course, in a state of sin." - John von Neumann, 1951 ``random`` 模块包含许多随机数生成器. 基本随机数生成... 阅读全文
posted @ 2017-10-31 21:14 淋哥 阅读(1044) 评论(0) 推荐(0) 编辑
摘要: ==getopt 模块== ``getopt`` 模块包含用于抽出命令行选项和参数的函数, 它可以处理多种格式的选项. 如 [Example 2-23 #eg-2-23] 所示. 其中第 2 个参数指定了允许的可缩写的选项. 选项名后的冒号(:) 意味这这个选项必须有额外的参数. ====Example 2-23. 使用 getopt 模块====[eg-2-23] ``` File... 阅读全文
posted @ 2017-10-31 21:11 淋哥 阅读(832) 评论(0) 推荐(0) 编辑
摘要: ==errno 模块== ``errno`` 模块定义了许多的符号错误码, 比如 ``ENOENT`` ("没有该目录入口") 以及 ``EPERM`` ("权限被拒绝"). 它还提供了一个映射到对应平台数字错误代码的字典. [Example 2-21 #eg-2-21] 展示了如何使用 ``errno`` 模块. 在大多情况下, //IOError// 异常会提供一个二元元组, 包含... 阅读全文
posted @ 2017-10-31 21:10 淋哥 阅读(2845) 评论(0) 推荐(0) 编辑
摘要: ==UserString 模块== (2.0 新增) ``UserString`` 模块包含两个类, //UserString// 和 //MutableString// . 前者是对标准字符串类型的封装, 后者是一个变种, 允许你修改特定位置的字符(联想下列表就知道了). 注意 //MutableString// 并不是效率很好, 许多操作是通过切片和字符串连接实现的. 如果性能很对你... 阅读全文
posted @ 2017-10-31 21:09 淋哥 阅读(1570) 评论(0) 推荐(0) 编辑
摘要: ==traceback 模块== [Example 2-18 #eg-2-18] 展示了 ``traceback`` 模块允许你在程序里打印异常的跟踪返回 (Traceback)信息, 类似未捕获异常时解释器所做的. 如 [Example 2-18 #eg-2-18] 所示. ====Example 2-18. 使用 traceback 模块打印跟踪返回信息====[eg-2-18] `... 阅读全文
posted @ 2017-10-31 21:09 淋哥 阅读(2268) 评论(0) 推荐(0) 编辑
摘要: ==UserList 模块== ``UserList`` 模块包含了一个可继承的列表类 (事实上是对内建列表类型的 Python 封装). 在 [Example 2-16 #eg-2-16] 中, //AutoList// 实例类似一个普通的列表对象, 但它允许你通过赋值为列表添加项目. ====Example 2-16. 使用 UserList 模块====[eg-2-16] ```... 阅读全文
posted @ 2017-10-31 21:08 淋哥 阅读(2626) 评论(0) 推荐(1) 编辑
摘要: ==UserDict 模块== ``UserDict`` 模块包含了一个可继承的字典类 (事实上是对内建字典类型的 Python 封装). [Example 2-15 #eg-2-15] 展示了一个增强的字典类, 允许对字典使用 "加/+" 操作并提供了接受关键字参数的构造函数. ====Example 2-15. 使用 UserDict 模块====[eg-2-15] ``` Fi... 阅读全文
posted @ 2017-10-31 21:07 淋哥 阅读(5153) 评论(0) 推荐(0) 编辑
摘要: ==cStringIO 模块== ``cStringIO`` 是一个可选的模块, 是 ``StringIO`` 的更快速实现. 它的工作方式和 ``StringIO`` 基本相同, 但是它不可以被继承. [Example 2-11 #eg-2-11] 展示了 ``cStringIO`` 的用法, 另参考前一节. ====Example 2-11. 使用 cStringIO 模块====[... 阅读全文
posted @ 2017-10-31 21:06 淋哥 阅读(4933) 评论(0) 推荐(0) 编辑
摘要: ==mmap 模块== (2.0 新增) ``mmap`` 模块提供了操作系统内存映射函数的接口, 如 [Example 2-13 #eg-2-13] 所示. 映射区域的行为和字符串对象类似, 但数据是直接从文件读取的. ====Example 2-13. 使用 mmap 模块====[eg-2-13] ``` File: mmap-example-1.py import mmap ... 阅读全文
posted @ 2017-10-31 21:04 淋哥 阅读(3376) 评论(0) 推荐(1) 编辑
摘要: ==StringIO 模块== [Example 2-8 #eg-2-8] 展示了 ``StringIO`` 模块的使用. 它实现了一个工作在内存的文件对象 (内存文件). 在大多需要标准文件对象的地方都可以使用它来替换. ====Example 2-8. 使用 StringIO 模块从内存文件读入内容====[eg-2-8] ``` File: stringio-example-1.p... 阅读全文
posted @ 2017-10-31 21:02 淋哥 阅读(2527) 评论(0) 推荐(0) 编辑
上一页 1 ··· 4 5 6 7 8 9 10 11 12 ··· 16 下一页