爬虫神器xpath的用法(三)

xpath的多线程爬虫

#encoding=utf-8
‘‘‘
pool = Pool(4) cpu的核数为4核
results = pool.map(爬取函数,网址列表)
‘‘‘
from multiprocessing.dummy import Pool as ThreadPool
import requests
import time

def getsource(url):
    html = requests.get(url)

urls = []

for i in range(1,21):
    newpage = ‘http://tieba.baidu.com/p/3522395718?pn=‘ + str(i)
    urls.append(newpage)

time1 = time.time()
for i in urls:
    print i
    getsource(i)
time2 = time.time()
print u‘单线程耗时:‘ + str(time2-time1)

pool = ThreadPool(4)
time3 = time.time()
results = pool.map(getsource, urls)
pool.close()
pool.join()
time4 = time.time()
print u‘并行耗时:‘ + str(time4-time3)

输出:

单线程耗时:12.0818030834
并行耗时:3.58480286598

时间: 2024-10-07 16:30:47

爬虫神器xpath的用法(三)的相关文章

爬虫神器xpath的用法(二)

爬取网页内容的时候,往往网页标签比较复杂,对于这种情况,需要用xpath的starts-with和string(.)功能属性来处理,具体看事例 #encoding=utf-8 from lxml import etree html1 = ''' <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <title></title&g

爬虫神器XPath,程序员带你免费获取周星驰等明星热门电影

本教程由“做全栈攻城狮”原创首发,本人大学生一枚平时还需要上课,但尽量每日更新文章教程.一方面把我所习得的知识分享出来,希望能对初学者有所帮助.另一方面总结自己所学,以备以后查看. 可能看着文章很短,但大家想想高考时800字的作文用了多长时间.字都是一个字一个字的码出来的,也需要很多精力. 非常需要各位的支持,哪怕点个赞,评论一下.更多技术方向的文章可以关注我.力求写出高质量文章.帮助更多学习技术的人. 本人大学生一枚,如各位有Asp.Net和安卓开发方向的兼职,可以联系微信:cxx7177.感

【Scrapy】Scrapy爬虫框架的基本用法

Scrapy爬虫框架的基本用法 Scrapy爬虫框架是一个好东西,可以十分简单快速爬取网站,特别适合那些不分离前后端的,数据直接生成在html文件内的网站.本文以爬取 杭电OJ http://acm.hdu.edu.cn 的题目ID和标题为例,做一个基本用法的记录 可参考 https://www.jianshu.com/p/7dee0837b3d2 安装Scrapy 使用pip安装 pip install scrapy 代码编写 建立项目 myspider scrapy startproject

CoreData用法三: NSPredicate在CoreData中的使用

NSPredicate在CoreData中常用作查询使用,相当于sql语句中的where查询子句. 最常用的方法为: NSPredicate *ca = [NSPredicate predicateWithFormat:(NSString *), ...]; 比如我们要查询student表中name="jjy"的信息,我们可以这样去用NSPredicate NSEntityDescription * emEty = [NSEntityDescription entityForName:

xpath 的用法

                                          爬虫利器xpath xpath术语 节点(node) 原文地址:https://www.cnblogs.com/wuheng-123/p/9385331.html

爬虫之数据解析的三种方式

一,正则表达式解析 re正则就不写了,前面已经写入一篇很详细的正则表达式模块了~ 而且,在爬虫中,下面两种方式用的多一些~ 正则表达式:https://www.cnblogs.com/peng104/p/9619801.html 大致用法: pattern = re.compile('<dd>.*?board-index.*?>(\d+)</i>.*?src="(.*?)".*?name"><a' +'.*?>(.*?)<

python xpath 基本用法

转自:http://www.pythoner.cn/home/blog/python-xpath-basic-usage/ Pyer发现 业界资讯 相册 第7期:Pythoner技术交流沙龙 关于我们 联系我们 发布时间: pythonercn 8 months, 3 weeks ago 在进行网页抓取的时候,分析定位html节点是获取抓取信息的关键,目前我用的是lxml模块(用来分析XML文档结构的,当然也能分析html结构), 利用其lxml.html的xpath对html进行分析,获取抓取

互联网金融爬虫怎么写-第一课 p2p网贷爬虫(XPath入门)

相关教程: 手把手教你写电商爬虫-第一课 找个软柿子捏捏 手把手教你写电商爬虫-第二课 实战尚妆网分页商品采集爬虫 手把手教你写电商爬虫-第三课 实战尚妆网AJAX请求处理和内容提取 手把手教你写电商爬虫-第四课 淘宝网商品爬虫自动JS渲染 手把手教你写电商爬虫-第五课 京东商品评论爬虫 一起来对付反爬虫 工具要求:教程中主要使用到了 1.神箭手云爬虫 框架  这个是爬虫的基础,2.Chrome浏览器和Chrome的插件XpathHelper 这个用来测试Xpath写的是否正确 基础知识:本教程

Python爬虫:Xpath语法笔记

一.选取节点 常用的路劲表达式: 表达式 描述 实例   nodename 选取nodename节点的所有子节点 xpath(‘//div’) 选取了div节点的所有子节点 / 从根节点选取 xpath(‘/div’) 从根节点上选取div节点 // 选取所有的当前节点,不考虑他们的位置 xpath(‘//div’) 选取所有的div节点 . 选取当前节点 xpath(‘./div’) 选取当前节点下的div节点 .. 选取当前节点的父节点 xpath(‘..’) 回到上一个节点 @ 选取属性