密码登录

from selenium import webdriver #导入webdriver

from selenium.webdriver.chrome.options import Options #导入Options

import time #导入time

option = Options()

option.add_argument("User-Agent='Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.162 Safari/537.36'")

driver = webdriver.Chrome(executable_path="F:\chromedriver_win32\ChromeDriver.exe",options=option) #获取Chrome驱动实例,和关键字参数options的值

driver.get("https://mail.qq.com/cgi-bin/frame_html?sid=-OOZ-YlkTsJegCxy&r=64bf8be173a557902c7cbb47351fa36f") #打开网站

time.sleep(2) #睡眠2秒

driver.switch_to.frame("login_frame") #切换 iframe(name为login_frame)

time.sleep(2) #睡眠2秒

driver.find_element_by_id("switcher_plogin").click() #点击

time.sleep(2) #睡眠2秒

driver.find_element_by_id("u").send_keys('账号') #id为u的窗口输入你的账号

driver.find_element_by_id("p").send_keys('密码') #id为p的窗口输入密码

time.sleep(2) #睡眠2秒

driver.find_element_by_id("login_button").click() #点击

time.sleep(2) #睡眠2秒

driver.find_element_by_id("folder_1").click() #点击收件箱

time.sleep(3) #睡眠3秒

driver.switch_to.frame("mainFrame") #切换主页面

time.sleep(10) #睡眠10秒

print(driver.page_source) #获取页面HTML文本

driver.close() #关闭浏览器

头像点击

from selenium import webdriver #导入webdriver

from selenium.webdriver.chrome.options import Options #导入Options

import time #导入time

option = Options()

option.add_argument("User-Agent='Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.162 Safari/537.36'")

driver = webdriver.Chrome(executable_path="F:\chromedriver_win32\ChromeDriver.exe",options=option) #获取Chrome驱动实例,和关键字参数options的值

driver.get("https://mail.qq.com/cgi-bin/frame_html?sid=-OOZ-YlkTsJegCxy&r=64bf8be173a557902c7cbb47351fa36f") #打开网站

time.sleep(2) #睡眠2秒

driver.switch_to.frame("login_frame") #切换 iframe(name为login_frame)

time.sleep(2) #睡眠2秒

driver.find_element_by_id("img_out_账号").click() # #把账号改为你真正的账号

time.sleep(2) #睡眠2秒

driver.find_element_by_id("folder_1").click() #点击收件箱

time.sleep(2) #睡眠3秒

driver.switch_to.frame("mainFrame") #切换主页面

time.sleep(10) #睡眠10秒

print(driver.page_source) #获取页面HTML文本

driver.close() #关闭浏览器

扩展延伸(将上述合并)进行QQ收件箱列表爬取

如果有头像点头像,否则输密码用户名登录

可以建立一个config.ini文件用以保存你的账号以及密码,具体操作https://blog.csdn.net/qq_47114453/article/details/105666366

from selenium import webdriver #导入webdriver

from selenium.webdriver.chrome.options import Options #导入Options

import time #导入time

import configparser #导入configparser

import csv #导入CSV

def get_html(): #通用爬虫框架发送请求

try:

option = Options()

option.add_argument("User-Agent='Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.162 Safari/537.36'")

driver = webdriver.Chrome(executable_path="F:\chromedriver_win32\ChromeDriver.exe",options=option) # 获取Chrome驱动实例,和关键字参数options的值

driver.get("https://mail.qq.com") # 打开网站

time.sleep(2) # 睡眠2秒

driver.switch_to.frame("login_frame") # 切换 iframe(name为login_frame)

images = "img_out_" + user

if driver.find_element_by_id(images): #查询是否可以头像点击

driver.find_element_by_id(images).click() #头像点击

else:

driver.find_element_by_id("switcher_plogin").click() # 用户密码登录点击

driver.find_element_by_id("u").send_keys(user) # id为u的窗口输入账号

time.sleep(2) #睡眠2秒

driver.find_element_by_id("p").send_keys(pwd) #id为p的窗口输入密码

time.sleep(2) # 睡眠2秒

time.sleep(2) # 睡眠2秒

driver.find_element_by_id("folder_1").click() #点击收件箱

time.sleep(2) #睡眠2秒

driver.switch_to.frame("mainFrame") #切换主页面

time.sleep(2) #睡眠2秒

return driver.find_elements_by_css_selector(".toarea table")

except Exception as err:

print("login", err) #报错信息

result_dict=[]#设置result_dict列表

def parser(sobj):

try:

for r in sobj: # 获取table

source = r.find_elements_by_css_selector("td nobr span")[0].text # 获取来源

title = r.find_element_by_css_selector(".gt u").text # 获取标题

content = r.find_element_by_css_selector(".gt b").text # 获取内容

time = r.find_element_by_css_selector(".dt div").text # 获取日期

newslist = [source, title, content, time] # 将上述插入newslist表

result_dict.append(newslist) # 将newslist列表插入result_dict列表

except Exception as err:

print("parser", err)

def save(item,path):#path文件保存路径,item数据列表

with open(path, "w+", encoding="utf_8_sig", newline='')as f:#打开路径,写入,编码utf_8_sig,换行

write = csv.writer(f)#写入样式

for i in item:

write.writerow(i)#写入内容

if __name__ == '__main__':

cp = configparser.ConfigParser()

cp.read("config.ini")

user = cp.get("userinfo","user")

pwd = cp.get("userinfo","pwd")

parser(get_html()) #获取页面link并赋值给parser

save(result_dict, "G:/im/QQ收件箱信息.csv") # 输出为CSV文件中

python模拟登录qq账号密码_QQ邮箱模拟登录(密码、头像、QQ邮箱爬取)相关推荐

  1. 淘宝模拟登录 +淘宝商品详情数据、淘宝商品列表数据爬取

    PYTHON环境: * requests库 * time库 * re库 实现思路: * 检查此账号需不需要验证(滑动验证/验证码) * 浏览器/工具 获取ua和加密后的密码(一劳永逸的方法) * po ...

  2. pythonurllib登录微博账号_简单爬虫实现登录新浪微博(python2.7)

    因为图论作业,所以要写一个爬虫,就开始学python.接触python开始,就觉得这个语言非常舒服,不需要定义变量,不需要分号,非常简洁. 下面就聊聊,我写爬虫的经历.上网搜了一下爬虫的代码,发现简单 ...

  3. python爬虫! 网站维护人员:真的求求你们了,不要再来爬取了,受不了了!!

    话说 在很久很久以前 小明不小心发现了一个叫做 学习python的正确姿势 从此一发不可收拾 看到什么网站都想爬取 有一天 小明发现了一个小黄网 里面的小姐姐 一个比一个诱人 看了一会这个小黄网 小明 ...

  4. python爬虫百度云资源分享吧_python爬虫入门 实战(七)---爬取并闪存微信群里的百度云资源...

    (声明:本篇文章以交流技术为目的,希望大家支持正版,支持院线~) 需求背景: 最近误入一个免费(daoban)资源的分享群(正经脸),群里每天都在刷资源链接.但是大家都知道,百度云的分享链接是很容易被 ...

  5. python参考手册 豆瓣_Python自定义豆瓣电影种类,排行,点评的爬取与存储(进阶上)...

    Python 2.7 IDE Pycharm 5.0.3 想了想,还是稍微人性化一点,做个成品GUI出来 起因 没办法,在知乎预告了要做个GUI出来,吹的牛逼总得自己填坑,下次一定要慎重啊,话说也复习 ...

  6. Python高级特性与网络爬虫(二):使用Selenium自动化测试工具爬取一号店商品信息

    上一篇介绍了Ajax动态渲染的页面的分析和爬取,通过JavaScript动态渲染的页面的方式不只有ajax这一种,还有很多其他的方式,分析他们的网页结构和加密参数难度非常大,为了解决这样的页面的数据爬 ...

  7. python宣传图片_Python爬虫,高清美图我全都要!爬取你想要的,嘿嘿嘿

    select = 'div#main div.list ul li a' imgUrls = screen(url, select) 通过这两行代码获取的列表中的值,形如此:星空 女孩 观望 唯美夜景 ...

  8. Python turtle 生成鸡哥动图,以及对鸡哥图片的爬取(附源码,注释)

    大一上学期Python大作业: 简述: 一. python turtle 库绘图,并实现动图效果 (1)篮球召唤阵 (2)铁山靠及打球 (3)哥哥投篮 (4)对鸽鸽的真心 二. 爬虫爬取鸡哥图片 (1 ...

  9. python爬虫知乎图片_Python爬虫入门教程 25-100 知乎文章图片爬取器之一

    1. 知乎文章图片爬取器之一写在前面 今天开始尝试爬取一下知乎,看一下这个网站都有什么好玩的内容可以爬取到,可能断断续续会写几篇文章,今天首先爬取最简单的,单一文章的所有回答,爬取这个没有什么难度. ...

  10. 利用python对b站某GPT-4解说视频的近万条弹幕进行爬取、数据挖掘、数据分析、弹幕数量预测及情绪分类

    目录 一.利用Python爬取弹幕 二.利用几行代码直接生成词云 三.将弹幕属性和内容放入mysql当中 四.分析弹幕在视频各节点的数量 1.分析视频各个片段出现的弹幕数量 2.分析视频各大章节出现的 ...

最新文章

  1. 编译php时错误make ***[libphp5.la] Error 1
  2. Jmeter学习笔记三_操作数据库(MySQL)
  3. 敏捷开发团队管理系列之三:程序与测试团队II
  4. python合并多个csv文件_python pandas合并多个csv文件
  5. 分类素材(part1)--Python与机器学习实战
  6. python向服务器请求压缩数据及解压缩数据
  7. Shell入门教程:算术运算
  8. svn回退到上一个版本_Git实用教程(一) | 为什么需要版本控制?(以嵌入式项目开发为例)...
  9. 通达OA 商务平台OA2017新版本简易评测(图文)
  10. altium designer绘制51单片机最小系统
  11. BZOJ_3772_精神污染_主席树
  12. Swin-Transformer 详解
  13. Excel 录制宏 - 制作工资条
  14. Shiro解决多个二级域名的单点登录问题
  15. 二进制及二进制的转换
  16. 计算机毕业论文基于Python实现的学生求职招聘兼职平台
  17. 穿过心灵的彼岸(二)
  18. LeetCode每日一题,积少成多,量变到质变(最近比较忙不定期持续更新.........)
  19. Linux 中三种引号(单引号、双引号、反引号)的区别
  20. 告别Flashget

热门文章

  1. 根据证件号码(zjhm)自动显示出生日期,籍贯,户籍所在地等信息
  2. 计算机硬件设备维护培训方案,计算机硬件维护技术及故障解决
  3. 桌面右键点计算机属性没反应,在win7系统中右键点击查看计算机属性没反应怎么办?...
  4. 佳博打印机android版本代码优化
  5. Linux——环境变量
  6. ElasticSearch快速入门(三)=> 集成Spring Boot + 效仿京东搜索小实战
  7. Vscode 中:Expected linebreaks to be ‘LF‘ but found ‘CRLF‘ linebreak-style
  8. 虎嗅 24 小时点赞器,一个案例附带一个爬虫技巧,Python 爬虫小课 7-9
  9. 采购策略中的合同支付类型
  10. Fastadmin开源CRM客户管理系统融合开发呼叫中心系统