Python网络爬虫4 – 多线程抓取

之前的内容已经大致实现了如何获取网页、分析网页、获取目标内容。接下来的目标是如何让网页抓取进行得更效率些。在进行抓取的时候,时间的消耗主要是在请求等待的时间上,所以一个最容易想到的优化方式就是使用多线程。

多线程

多线程的实现还是比较简单的,下面是一个简单的线程实现方案:

…

lambda表达式3 – 方法引用

一个实例

使用lambda表达式可以创建简洁的匿名方法。不过,有时候lambda表达式只是简单的调用了已有的方法。此时,使用方法引用无疑是一个更简洁易读的方案。

再来看看之前使用过的Person类:

…

intellij idea git ignore

使用intellij idea时想将一个文件或目录排除在版本控制外,却找不到add to ignore选项。在使用git时,可以直接编辑.ignore文件,但是还是觉得有些不方便。所以安装一个插件好了:settings –> plugins –> Browse repositories,搜索ignore,选第一个.ignore – VCS INTEGRAT…

关于https的一个错误

前两天我维护的服务出了一个问题,在请求一个连接时发生了Exception:

…

Python网络爬虫3 – 使用BeautifulSoup解析网页

在第一节演示过如何使用正则表达式截取网页内容。不过html是比正则表达式更高一级的语言,仅仅使用正则表达式来获取内容还是有些困难的。

这次会使用一个新的工具:python的BeautifulSoup库,BeautifulSoup是用来从HTML或XML文件中提取数据的工具。

BeautifulSoup需要先安装才能使用。关于BeautifulSoup安装和使用可…

Python网络爬虫2 – 请求中遇到的几个问题

这次尝试下怎样搜索电影并解析出磁力链接信息。

搜索的网址是:https://www.torrentkitty.tv/search/。

开始了!

使用FireFox打开上面的网址,输入要搜索的电影。在点击搜索按钮前记得打开FireBug,并激活“网络”页签。

查看了请求的详情有些哭笑不得:点击搜索按钮后网页跳转到了这样的地址:https://www.torrentki…

Python网络爬虫1 – 简单的Http请求

最近这段时间会有需要写一个网络爬虫。会在这里将实现网络爬虫的经验记录下来。

爬虫什么的,只是一个名字罢了。简单地说,也都是从http请求开始的。

Python实现http请求主要依赖的是urllib.request模块。例如发送http get请求:

…