费劲心思在某度文库找到了一份十分适合自己学习的课件,点击下载确是这样的,是不是很气,要掏马内才能下载。下载需要券,或者Vip才能下载。Vip价格高,偶尔下载一次不划算。
有没有什么方法可以白嫖某度文库的课件呢?
当然有。今天我们来操作一番,免登录一键下载某度文库各类PPT课件,省钱给女朋友买520礼物,真香!学习泡妞两不误,学会这招,女神秒变小迷妹~~~
今天不想码字,原理很简单, PTT文件的内容实际是图片,我们只需要把图片下载并保存。
直接上源码了,简单实用,输入你想爬取的课件地址,静静等待就行。
# 导入的包
import os.path
import time
from selenium import webdriver
import requests
from selenium.webdriver.support.select import Select
url = input('输入想要下载的百度文库地址:') # 输入自己需要爬取的PPT地址
# 第一部分:手机模式打开一个电脑浏览器
options = webdriver.ChromeOptions() # 配置chrome启动时属性的类
mobile_emulation = {"deviceName": "iPhone 6"} # 手机模式打开浏览器,手机类型:iPhone 6
options.add_experimental_option("mobileEmulation", mobile_emulation) # 将mobile_emulation 添加到options中,这样浏览器就是通过手机模式打开
web = webdriver.Chrome(executable_path= '*:**\chromedriver.exe', chrome_options=options) # 路径修改为自己电脑浏览器驱动路径
web.get(url)
time.sleep(2)
# 第二部分:将所有隐藏的ppt图片展示出来
def click_ele(click_xpath):
# 单击指定控件
click_ele = web.find_elements_by_xpath(click_xpath)
if click_ele:
click_ele[0].location_once_scrolled_into_view # 滚动到控件位置
web.execute_script('arguments[0].click()', click_ele[0]) # 单击控件,即使控件被遮挡,同样可以单击
# 点击继续阅读
xpath_continue_read_button = "//div[@class='foldpagewg-icon']" # 获取继续阅读得到xpath
click_ele(xpath_continue_read_button) # 调用click_ele()
xpath_next_content_button = "//div[@class='btn-wrap']/div[@class='btn-cancel']" # 获取下一页的xpath
click_ele(xpath_next_content_button) # 调用click_ele()
click_count = 0
while True:
# 如果到了最后一页就跳出循环
if web.find_elements_by_xpath(
"//div[@class='pagerwg-loadSucc hide']") or web.find_elements_by_xpath(
"//div[@class='pagerwg-button' and @style='display: none;']"):
break
# 点击加载更多
xpath_loading_more_button = "//span[@class='pagerwg-arrow-lower']"
click_ele(xpath_loading_more_button)
click_count += 1
print("第{}次点击加载更多!".format(click_count))
# 等待一秒,等浏览器加载
time.sleep(2)
click_ele('//*[@id="wui-messagebox-cancel-1"]')
time.sleep(1)
# 图片元素的定位及获取
li_list = web.find_elements_by_class_name('retype-page')
img_url = []
for i in li_list:
h2 = i.find_element_by_class_name('pic')
time.sleep(3)
h3 = h2.find_element_by_tag_name('img')
time.sleep(1)
img = h3.get_attribute('src')
img_url.append(img)
# 创建文件夹进行保存
path = '*://*//*//爬虫ppt图片' # 看自己心情,将爬取的PPT图片放在哪里,比如:D://百度文库PPT//爬虫ppt图片
if not os.path.exists(path): # 查找是否有存储的文件夹,没有则创建一个
os.makedirs(path)
# 解析图片url,并保存到已创建的文件夹中
x = 1
for g in range(len(img_url)):
r = requests.get(img_url[g])
path = '*://*//*//爬虫ppt图片//%d.jpg' % x
print('正在爬取' + img)
with open(path, "wb") as f:
f.write(r.content)
time.sleep(2)
f.close()
print('爬取成功')
x += 1
可以根据自己需求更改代码。
特别说明:仅限学习交流,切勿恶意攻击,尊重原创版权,勿做商业用途
看一波实操结果:
这里给大家分享一份Python全套学习资料,包括学习路线、软件、源码、视频、面试题等等,都是我自己学习时整理的,希望可以对正在学习或者想要学习Python的朋友有帮助!
CSDN大礼包:全网最全《全套Python学习资料》免费分享🎁
😝有需要的小伙伴,可以点击下方链接免费领取或者V扫描下方二维码免费领取🆓
1️⃣零基础入门
① 学习路线
对于从来没有接触过Python的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
② 路线对应学习视频
还有很多适合0基础入门的学习视频,有了这些视频,轻轻松松上手Python~
③练习题
每节视频课后,都有对应的练习题哦,可以检验学习成果哈哈!
因篇幅有限,仅展示部分资料
2️⃣国内外Python书籍、文档
① 文档和书籍资料
3️⃣Python工具包+项目源码合集
①Python工具包
学习Python常用的开发软件都在这里了!每个都有详细的安装教程,保证你可以安装成功哦!
②Python实战案例
光学理论是没用的,要学会跟着一起敲代码,动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。100+实战案例源码等你来拿!
③Python小游戏源码
如果觉得上面的实战案例有点枯燥,可以试试自己用Python编写小游戏,让你的学习过程中增添一点趣味!
4️⃣Python面试题
我们学会了Python之后,有了技能就可以出去找工作啦!下面这些面试题是都来自阿里、腾讯、字节等一线互联网大厂,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
5️⃣Python兼职渠道
而且学会Python以后,还可以在各大兼职平台接单赚钱,各种兼职渠道+兼职注意事项+如何和客户沟通,我都整理成文档了。
上述所有资料 ⚡️ ,朋友们如果有需要 📦《全套Python学习资料》的,可以扫描下方二维码免费领取 🆓
😝有需要的小伙伴,可以点击下方链接免费领取或者V扫描下方二维码免费领取🆓