使用python来完成对QQ邮箱文件中转站的文件下载链接的获取


前言

最近使用QQ邮箱中的文件中转站来生成一些文件的外部链接,然后发现,在中转站中下载文件容易,但是想要取得它的外部链接就有些困难,而且文件数量还挺多,所以我就想使用python来对文件中转站的文件下载地址进行批量获取。


一、所使用的工具

1.python3.9
2.pycharm2021
3.Chrome浏览器+对应版本的驱动

谷歌浏览器下载:
[https://www.google.cn/intl/zh-CN/chrome/]
如果有chrome驱动安装有问题的可以浏览下面网站:
https://blog.csdn.net/n123456uo/article/details/91412740
如果没有找到自己谷歌浏览器对应驱动版本,可以访问下面链接来查找与自己浏览器版本对应的驱动版本:
https://chromedriver.storage.googleapis.com/LATEST_RELEASE_+自己谷歌浏览器的版本号码
例如:谷歌浏览器版本号码为88.0.4324,就访问https://chromedriver.storage.googleapis.com/LATEST_RELEASE_88.0.4324

二、明确目标以及分析步骤

1.明确目标

在这里插入图片描述
目标:将上图的88份文件的下载地址爬取下来存放在csv表格中

2.分析步骤

在这里插入图片描述

三、开始写代码

0.引入库+创建csv文件

库代码如下:

import selenium
from selenium import webdriver
import pyperclip
import os
import time
import warnings
import csv

创建csv文件代码如下:


# <--------------------0.新建一个表格‘文件中转站下载链接’-------------------->
f=open('文件中转站下载链接.csv',mode='w',encoding='utf-8',newline='')
# 设置好列名
csv_writer=csv.DictWriter(f,fieldnames=['序号','标题','链接'])
csv_writer.writeheader()#自动写入表头

1.登陆QQ邮箱

两种方式(推荐下面两位大神的博客):
方式1:填充账号密码
方式2:使用cookie免密登陆
我使用的是方式1,因为在使用方式2的时候发现当天使用正常,但隔天就无法登陆,又需要重新获取一次cookie(不知道是啥原因)

具体代码如下(下方代码借鉴自:https://blog.csdn.net/zhengyizyp/article/details/103508939):


browser = webdriver.Chrome()
# <--------------------1.登陆qq邮箱------------------------------>
browser.get('https://mail.qq.com/')
# 定位login_frame
browser.switch_to.frame("login_frame")

# 定位账号、密码,并输入
browser.find_element_by_xpath('//*[@id="u"]').send_keys("qq号")
browser.find_element_by_xpath('//*[@id="p"]').send_keys("qq密码")
# 定位登录按钮
browser.find_element_by_xpath('//*[@id="login_button"]').click()
# 离开login_frame
# browser.switch_to.parent_frame()
browser.switch_to.default_content()
# 等待一秒
time.sleep(1)


2.进入文件中转站

在输入完账号密码之后,qq邮箱有可能会进行身份核验,如下图:
在这里插入图片描述
对于出现这种情况&#

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Python中,可以使用smtplib库来发送邮件,而qq邮箱则需要使用QQ邮箱提供的SMTP服务器进行发送。下面是一个简单的示例代码,演示如何使用Python发送文件QQ邮箱: ```python import smtplib from email.mime.text import MIMEText from email.mime.multipart import MIMEMultipart from email.mime.application import MIMEApplication # 发件人邮箱账号 sender = 'your_email@qq.com' # 发件人邮箱密码(注意不是登录密码,而是授权码) password = 'your_password' # 收件人邮箱账号 receiver = 'recipient_email@qq.com' # 创建一个带附件的邮件实例 message = MIMEMultipart() message['From'] = sender message['To'] = receiver message['Subject'] = 'Python QQ邮箱发送文件示例' # 邮件正文内容 text = MIMEText('这是一封带附件的邮件。') message.attach(text) # 读取要发送的文件 file_path = 'path_to_your_file' with open(file_path, 'rb') as f: # 创建附件实例 attachment = MIMEApplication(f.read()) # 设置附件名称 attachment.add_header('Content-Disposition', 'attachment', filename='file_name') # 添加附件到邮件实例 message.attach(attachment) try: # 连QQ邮箱的SMTP服务器 server = smtplib.SMTP_SSL('smtp.qq.com', 465) # 登录邮箱 server.login(sender, password) # 发送邮件 server.sendmail(sender, receiver, message.as_string()) print('邮件发送成功') except Exception as e: print('邮件发送失败:', str(e)) finally: # 关闭连 server.quit() ``` 请注意,上述代码中的`your_email@qq.com`和`your_password`需要替换为你自己的QQ邮箱账号和授权码,`recipient_email@qq.com`需要替换为收件人的邮箱账号,`path_to_your_file`需要替换为要发送的文件的路径,`file_name`需要替换为附件的文件名。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值