当前位置:首页 > AI资讯 > 正文内容

360文库Python采集工具,你急需要的文档搜集器来了!!

wxianyue1个月前 (12-05)AI资讯1685
国内最强的AI写作工具,帮你写爆款文案

个人图书馆资料还是比较齐全的360文库可以帮你写爆款文案的AI系统,相信不少童鞋都惦记上里面的内容,什么要登录账号,还需要收藏才能粘贴复制,那内心肯定是拒绝的!

那么有什么好方法呢?当然还是祭上神器,一个爬虫搞定所有烦恼!

360文库是一个综合性的文档分享和学习平台,内容涉及教育考试、商业文档、行业资料、专业论文、工作计划和总结、办公文书、休闲生活等。

工具说明:

1.需输入初始网址,也就是你想要获取的文档地址

2.使用bs4获取相关内容

3.协议头中的一定要带上网址,不然图片反爬,403错误

4.图片获取这里写了两次,大家注意采用

5.还是图片的原因,导致库输出pdf格式无图片,这不知道怎么解决

6.可能部分内容获取不全,仅供测试使用,望见谅

运行效果:

360文库会员登录_360文库会员_360文库

爬取效果:

360文库会员_360文库_360文库会员登录

库输出pdf格式报错:

Loading pages (1/6)Warning: Failed to load http://userimage8.360doc.com/19/1205/17/61082271_201912051709280365512574.jpg (ignore)Warning: Failed to load http://userimage8.360doc.com/19/1206/09/61082271_201912060941350084527096.jpg (ignore)Warning: Failed to load http://userimage8.360doc.com/19/1206/09/61082271_201912060941590240446268.jpg (ignore)Warning: Failed to load http://userimage8.360doc.com/19/1206/09/61082271_201912060942170818231432.jpg (ignore)Warning: Failed to load http://userimage8.360doc.com/19/1206/09/61082271_201912060942430568873791.jpg (ignore)Warning: Failed to load http://userimage8.360doc.com/19/1206/09/61082271_201912060942580193985819.jpg (ignore)Counting pages (2/6)                                               Resolving links (4/6)                                                       Loading headers and footers (5/6)                                           Printing pages (6/6)Done

就是图片反爬的设置!暂时没有不知道解决方案。。

self.confg = pdfkit.configuration(wkhtmltopdf=r'C:\Users\Administrator\AppData\Local\Programs\Python\Python37\wkhtmltox\bin\wkhtmltopdf.exe')

路径需改为你自己的!

关于库使用

,把HTML+CSS格式的文件转换成PDF格式文档的一种工具。它就是html转成pdf工具包的封装。所以360文库,必须手动安装。

安装:

pip install pdfkit

工具 下载网站是:

基本用法:

import pdfkit
pdfkit.from_url('http://google.com', 'out.pdf')pdfkit.from_file('test.html', 'out.pdf')pdfkit.from_string('Hello!', 'out.pdf')

可以转换的内容分别为三种,网址,文件以及文本内容!

附上完整源码:

#360doc采集# -*- coding: utf-8 -*-#20191211 by 微信:huguo00289
import requestsfrom bs4 import BeautifulSoupfrom fake_useragent import UserAgentimport timeimport pdfkitimport osimport re
class Doc(object): def __init__(self,url): self.ua=UserAgent() self.url =url self.headers={"User-Agent":self.ua.random,'Referer': self.url} self.confg = pdfkit.configuration(wkhtmltopdf=r'C:\Users\Administrator\AppData\Local\Programs\Python\Python37\wkhtmltox\bin\wkhtmltopdf.exe') #wkhtmltopdf路径需改为你自己的! self.path=r'360doc' #文件路径 self.h2=''

#访问文库链接 def get_soup(self): response=requests.get(self.url,headers=self.headers) if response.status_code==200: soup=BeautifulSoup(response.content.decode('utf-8'),'lxml') else: print("访问%s文档链接失败!"%self.url) soup=None return soup
#获取文章内容 def get_content(self,soup): texts='' #获取标题 h2=soup.find('h2').get_text() h2 = h2.replace('\n', '') h2 = re.sub(r'[\|\/\<\>\:\*\?\\\"]', "_", h2) # 剔除不合法字符 self.h2=h2 print(h2) path='%s/%s/'%(self.path,self.h2) os.makedirs(path, exist_ok=True) #获取文本内容 atricle = soup.find('table') p_texts=atricle.find_all('p') i=1 for p_text in p_texts: if "img" in str(p_text): img_url=p_text.find('img')['src'] img_name=f'{i}.jpg' r=requests.get(img_url,headers=self.headers) with open('%s/%s/%s' % (self.path, h2, img_name), 'wb') as f: f.write(r.content) print(f">>> 下载{img_name}图片成功了!") time.sleep(1) i=i+1 p_text=img_name else: p_text=p_text.get_text() texts = '%s%s%s'%(texts,'\n',p_text) texts = '%s%s%s' % (h2, '\n', texts) print(texts) print(f"开始保存{h2}.txt文档...") with open('%s/%s/%s.txt' % (self.path,h2,h2),'w',encoding='utf-8') as f: f.write(texts) print(f">>> 保存{h2}文档成功了!")
#获取图片 imgs=atricle.find_all('img') y = 1 for img in imgs: imgq_url=img['src'] imgq_name=f'q_{y}.jpg' rq = requests.get(imgq_url, headers=self.headers) with open('%s/%s/%s' % (self.path, h2, imgq_name), 'wb') as f: f.write(rq.content) print(f">>> 下载{imgq_name}图片成功了!") y=y+1 time.sleep(2)

self.dypdf(atricle, h2) #保存为pdf

#保存为pdf def dypdf(self,atricle,h2): path='%s/%s/%s.pdf' % (self.path,h2,h2) datas=f'{atricle}' print("开始打印内容!") pdfkit.from_string(datas, path, configuration=self.confg) print("打印保存成功!")

if __name__=='__main__': url='http://www.360doc.com/content/19/1205/17/61082271_877658220.shtml' spider=Doc(url) #实例化 soup=spider.get_soup() spider.get_content(soup)

手机浏览,点击图片保存二维码到相册,然后打开微信扫一扫选择本二维码图片就可以进入,电脑端微信“扫一扫”二维码,进入找聊天搭子平台,里面有找饭搭子、找对象、找陪伴服务等等

扫描二维码推送至手机访问。

版权声明:本文由小猪信息平台发布,如需转载请注明出处。

本文链接:https://pplcom.com/post/58382.html

分享给朋友:

相关文章

ChatGPT引领突破!人工智能加速度,中国企业紧紧跟住

ChatGPT引领突破!人工智能加速度,中国企业紧紧跟住

【环球时报报道 记者 杨沙沙 赵觉珵 倪浩 丁雅栀 甄翔】能搜索、能编程、能写诗、能写剧本,甚至还能写论文,凭借前所未有的“智商”以及更贴近人类的“思维”,人工智能研究公司的人工智能聊天机器人模型成为...

chat gpt人工智能官网入口在哪 chat gpt人工智能官网入口网址分享

chat gpt人工智能官网入口在哪 chat gpt人工智能官网入口网址分享

chat gpt人工智能是一种人工智能模型gpt人工智能,基于架构并使用无监督学习的方式进行预训练,用于各种人工智能任务。可以自动学习并处理人类自然语言,并生成接近人类水平的文本,那么chat gpt...

ChatGPT对学术期刊影响如何

ChatGPT对学术期刊影响如何

2022年11月30日,人工智能实验室发布了全新聊天机器人模型,究其本质,这是一款人工智能技术驱动的自然语言处理工具。作为一款大型语言模型,在经历了技术不断迭代完善后,甫一问世便引起了广泛关注。调查显...

人工智能的最新发展:技术、应用与未来

人工智能的最新发展:技术、应用与未来

GPT( Pre- )是一种通用的自然语言处理(NLP)技术,用于帮助计算机理解文本。它可以利用文本数据来构建交互式的模型,可以更好地理解文本内容,从而更好地进行文本分析。同时,GPT 技术还可以用于...

比尔盖茨:超级人工智能还没来,GPT模型是40余年来最革命性技术进步

比尔盖茨:超级人工智能还没来,GPT模型是40余年来最革命性技术进步

比尔·盖茨认为人工智能(AI)可与手机、互联网比肩齐声。 当地时间3月21日,微软公司创始人比尔·盖茨在其博客文章《人工智能时代已经开启》中表示,自1980年首次看到图形用户界面( user )以来,...

Inno关键词丨GPT和人工智能(上篇)

Inno关键词丨GPT和人工智能(上篇)

全球供需对接平台致力于形成需求引导、成果匹配、服务跟进的综合生态,打造创新链和产业链双向联通的“双向快车道”。 近日,在AI领域风头正盛的母公司Open AI正式宣布进军人形机器人方向,试图打破AI...