pool.map()爬取美文网标题内容
'''
日期:2020年12月24日
需求:- 标题,里面内容- 用线程池爬取总结:- etree时当前目录‘.’,不能忘掉- join() 方法用于将序列中的元素以指定的字符连接生成一个新的字符串。- pool.map()的用法:- 有两个参数可以传,第一个参数传的是函数,第二个参数传的是数据列表。可以定义多个方法利用return传递。
'''import requests
from lxml import etree
from fake_useragent import UserAgent
from multiprocessing.dummy import Poolger_url = 'http://www.szwj72.cn/'
headers = {"User-Agent": UserAgent().random
}re_text = requests.get(ger_url, headers=headers)
re_text.encoding = 'gbk'
tree = etree.HTML(re_text.text)
lists = tree.xpath('//div[@class="ui attached segment"]/div/div[@class="eleven wide column"]/h3/a')
# 点击每一个标题进入内容页
content_urls = []
for l in lists:# 注意在当前目录title = l.xpath('./text()')[0]content_url_temp = l.xpath('./@href')[0]dict = {'title': title,'content_url': content_url_temp}content_urls.append(dict)# 定义方法,
def get_content(dict):print('开始下载')url = dict['content_url']content = requests.get(url=url, headers=headers)content.encoding = 'gbk'tree = etree.HTML(content.text)content = tree.xpath('//article[@class="article-content"]/p//text()')# join() 方法用于将序列中的元素以指定的字符连接生成一个新的字符串。content = ''.join(content)return save_content(content)def save_content(content):with open(f'{dict["title"]}' + '.txt', 'w', encoding='gbk') as f:t = content.replace('\xa0', '')f.write(t)print('下载完成')# 方法一:
# 创建4个线程池,或者更多
# pool = Pool(4)
# # pool.map()函数,这个函数,有两个参数可以传,第一个参数传的是函数,第二个参数传的是数据列表
# pool.map(get_content,content_urls)
# pool.close()# 方法2:
# 可以用with 不需要再关闭
with Pool(4) as p:res = p.map(get_content, content_urls)
pool.map()爬取美文网标题内容相关推荐
- python爬取猪八戒网的内容
from lxml import etree import requests # 爬取页面 def get_page(url):resp = requests.get(url)resp.encodin ...
- 爬虫练习(一)爬取知网、万方、维普文献标题、作者、刊物来源等信息
刚刚开始学习Python,今天一周整,浏览了站内一些大侠博客相关内容,自己也尝试着写了一个爬虫. 直接借鉴了几位大侠的经验,如有冒犯之处恳请海涵. 先说说目的吧,本爬虫的目的是根据EXCEL文件的作者 ...
- python爬虫scrapy爬取新闻标题及链接_python爬虫框架scrapy爬取梅花网资讯信息
原标题:python爬虫框架scrapy爬取梅花网资讯信息 一.介绍 本例子用scrapy-splash爬取梅花网(http://www.meihua.info/a/list/today)的资讯信息, ...
- Python爬取网页所需内容+王者荣耀官网
目标: 完成对王者荣耀游戏的所有英雄头像.皮肤等数据的内容爬取及图片下载,所涉及到的模块内容有requests.json.lxml.selenium.os等.王者荣耀英雄官网地址如下:https:// ...
- python 爬取贝壳网小区名称_Python爬虫实战:爬取贝壳网二手房40000条数据
前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理 以下文章来源于啤酒就辣条 ,作者啤酒就辣条 一.网页分析 爬取贝壳网石家庄二 ...
- Python 爬虫第三步 -- 多线程爬虫爬取当当网书籍信息
XPath 的安装以及使用 1 . XPath 的介绍 刚学过正则表达式,用的正顺手,现在就把正则表达式替换掉,使用 XPath,有人表示这太坑爹了,早知道刚上来就学习 XPath 多省事 啊.其实我 ...
- Python爬虫实战:爬取贝壳网二手房40000条数据
前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理 以下文章来源于啤酒就辣条 ,作者啤酒就辣条 一.网页分析 爬取贝壳网石家庄二 ...
- java+selenium爬取知网数据
使用selenium工具爬取知网相关数据,思路:根据几个关键词搜索出相关的内容,然后爬取列表中所有论文的访问链接. 注意:直接爬取的链接是不能用的,需要自己拼接一下.具体看代码.新手,代码写的有点乱. ...
- 爬虫练习- 爬取转转网二手市场商品信息
前言: 使用多进程爬虫方法爬取转转网二手市场商品信息,并将爬取的数据存储于MongoDB数据库中 本文为整理代码,梳理思路,验证代码有效性--2020.1.18 环境: Python3(Anacond ...
- [python爬虫] BeautifulSoup和Selenium简单爬取知网信息测试
作者最近在研究复杂网络和知识图谱内容,准备爬取知网论文相关信息进行分析,包括标题.摘要.出版社.年份.下载数和被引用数.作者信息等.但是在爬取知网论文时,遇到问题如下: 1.爬取内容总为空,其原因 ...
最新文章
- 图片的另一种展现—将后台图片编码直接展现为图片
- servlet的的生命周期和使用
- 浅谈Android Fragment嵌套使用存在的一些BUG以及解决方法
- 什么是区块链技术?初学者指南
- codematic2连接mysql失败_怎么连接oracle数据库
- 【视频】谷歌大佬30分钟让你入门机器学习(2019谷歌I/O资源分享)
- SAP Cloud for Customer跨component的跳转
- java动画闪烁_优化Java动画编程中的显示效果
- android拦截短信获取短信内容,《英雄联盟手游》先锋测试招募说明:仅安卓用户...
- IOS学习笔记6—Objective C—Foundation框架
- python热图怎么截取对角线的一半_python-控制seaborn热图中的单个线宽
- linux dprintk 日志,linux內核調試中的printk()函數詳解
- 【日常记录】CTF审查清单(windows)
- php一行代码实现人脸识别,一行代码搞定人脸识别
- 《FLUENT 14流场分析自学手册》——1.6 计算网格与边界条件
- EEGLAB合辑 | 第一节 往EEGLAB导入数据
- Oracle 索引详解(index)
- Python3.8场景式编程学习与训练- 第1章 入门基础 沙箱技术与虚拟环境创建
- 申清企业微信需要什么条件
- 低学历者生存困难 程序员尤其明显