爬取目标

1.爬取目标网站:我的博客:https://home.cnblogs.com/u/canglongdao/followers/

爬取内容:爬取我的博客的所有粉丝的名称,并保存到txt

3.由于博客园的登录时需要人机验证的,所以无法直接使用账号自动登录

4.可以先使用selenium代码,在需要输入验证码处,停留几秒,手动验证

5.获取登录成功的cookies,并复制保持登录相关的cookie(字典格式)

代码如下:

# coding:utf-8
from selenium import webdriver
import time
driver=webdriver.Chrome()
driver.get("https://account.cnblogs.com/signin")
nlc=driver.get_cookies()
print(len(nlc),nlc)
driver.find_element_by_id("mat-input-0").send_keys("xxx@qq.com")
driver.find_element_by_id("mat-input-1").send_keys("P@ssw0rd")
driver.find_element_by_xpath("//span[@class='mat-button-wrapper']").click()
time.sleep(6)
lc=driver.get_cookies()
print(len(lc),lc)

 运行结果:

5 [{'domain': 'account.cnblogs.com', 'expiry': 1599210767, 'httpOnly': False, 'name': '4271c12252a544478175bac9772afc3d', 'path': '/', 'secure': False, 'value': '010720fb-f7e4-4f4b-b206-0e991ecf6f5b'}, {'domain': 'account.cnblogs.com', 'httpOnly': False, 'name': 'SERVERID', 'path': '/', 'secure': False, 'value': 'daace45bf36fef87f4742d8b633fdae3|1599208967|1599208966'}, {'domain': 'account.cnblogs.com', 'httpOnly': True, 'name': '.Cnblogs.Account.Session', 'path': '/', 'secure': False, 'value': 'CfDJ8K5MrGQfPjpFvRyctF%2BQEQcGP%2Bk0zUGAelDZwKkZE07wn7bgYbw56biK9%2FwoxKcs%2FmFFb%2B21xAjYxIXXQJeai7NvLoyDfgSr45CxhE9nwRKokI1nqtUdlD5wk2MHtHUO4kIFOTpe9gzKU%2F%2BDs%2B65eSMPAU62bfOS86QdUoNXH5qL'}, {'domain': 'account.cnblogs.com', 'httpOnly': False, 'name': 'XSRF-TOKEN', 'path': '/', 'secure': False, 'value': 'CfDJ8K5MrGQfPjpFvRyctF-QEQcyb192CHuZwpo_t9r1Ps07m_GVYNh15x2atqF3hGcynCnlxxqVFCWmUT5OqBV0zfYfYC3BjZ-7WUDux6AI1xLaMad3ETT6_MyakbxByaS76Nim_y5-i1_oX0aBl2U91xs'}, {'domain': 'account.cnblogs.com', 'httpOnly': True, 'name': '.Cnblogs.Account.Antiforgery', 'path': '/', 'secure': False, 'value': 'CfDJ8K5MrGQfPjpFvRyctF-QEQek9XiBoWIQkti8vvTbpqx-CFIWKb39vrCeVudMwHbcPXBWb8LBrlnlM0JzKwWlUlgaD5ioMqre_sd1nEFtrTGhAMmUsVWYxYta1gs4DkuYVinqEL6omAaSnZIJhoxLfp8'}]
5 [{'domain': '.cnblogs.com', 'expiry': 1599295374, 'httpOnly': False, 'name': '_gid', 'path': '/', 'secure': False, 'value': 'GA1.2.683535015.1599208975'}, {'domain': '.cnblogs.com', 'expiry': 1662280974, 'httpOnly': False, 'name': '_ga', 'path': '/', 'secure': False, 'value': 'GA1.2.1985506889.1599208975'}, {'domain': '.cnblogs.com', 'expiry': 1600504974, 'httpOnly': True, 'name': '.CNBlogsCookie', 'path': '/', 'secure': False, 'value': 'EB2AB3A42B8CEE723552C8644CAD13CEFA311FA3955FDB7A25A33EEB87199C843967F5791CB012543FD9AC374F535F23C228D4AC5E0373CAA6855768E5713BDF88D82BB97C38A668CDDEB72E0D5055467339189E'}, {'domain': '.cnblogs.com', 'expiry': 1599209034, 'httpOnly': False, 'name': '_gat', 'path': '/', 'secure': False, 'value': '1'}, {'domain': '.cnblogs.com', 'expiry': 1600504974, 'httpOnly': True, 'name': '.Cnblogs.AspNetCore.Cookies', 'path': '/', 'secure': False, 'value': 'CfDJ8K5MrGQfPjpFvRyctF-QEQcWJIxPwl8mHGJMd1DItl4C_m7X5ixG1-4yGpDWsiv3n9Iung2Yxk7eaHqXJ1rAGWYXeQF3OyXzSXfYHkPc7A7RPLekmvNk0dNucu8ssSF7ldaY1Nqsnx-q9O3U6JpZ_GCz8ed5jwuq1g8V_StxqpEq2ell4jFdrMmgA1GQudbiFYE1aPVcf1Rs5U7xUJ6UjMJijwG3_OAfQJ9DSibuDqYuhvaS0wwbR6OUfQIBI6NFDdwXz5GL0wJZ82wmPjkKKrrX3ADNm1jsdJxb9fceZC2CfDC2aqe-XotiNwzbsA2vhkDpB5m3JOLYA_P7mWfSexjGKs6ii9E2fNjgYgqZA8TG-1CqvApZjzkCgWklntSP71W5Xrc8zSNkRPiSuoMEKtzVecH65t9utYA2ZneK-mVParwkydH3_hcx1l03CYj6p7HP33S5MsWtvDagWN3waRPfRtdUx2KTDUTKl0Rpt-Gb1cL8RWSctfQxrg8gGKmWYwGqoPhLcDmtPc7D1C6EmZaxp61YODRup2mIzFdRdCvoU8F3Ll9Tsgb8ja7gHra03g'}]

 添加登录的cookie,并获取粉丝名称

# coding:utf-8
from selenium import webdriver
import time
driver=webdriver.Chrome()#手动从登陆后,获取到的cookie中,复制如下内容,赋值给c1,c2
c1={'domain': '.cnblogs.com', 'expiry': 1600504974, 'httpOnly': True, 'name': '.CNBlogsCookie', 'path': '/', 'secure': False, 'value': 'EB2AB3A42B8CEE723552C8644CAD13CEFA311FA3955FDB7A25A33EEB87199C843967F5791CB012543FD9AC374F535F23C228D4AC5E0373CAA6855768E5713BDF88D82BB97C38A668CDDEB72E0D5055467339189E'}
c2={'domain': '.cnblogs.com', 'expiry': 1600504974, 'httpOnly': True, 'name': '.Cnblogs.AspNetCore.Cookies', 'path': '/', 'secure': False, 'value': 'CfDJ8K5MrGQfPjpFvRyctF-QEQcWJIxPwl8mHGJMd1DItl4C_m7X5ixG1-4yGpDWsiv3n9Iung2Yxk7eaHqXJ1rAGWYXeQF3OyXzSXfYHkPc7A7RPLekmvNk0dNucu8ssSF7ldaY1Nqsnx-q9O3U6JpZ_GCz8ed5jwuq1g8V_StxqpEq2ell4jFdrMmgA1GQudbiFYE1aPVcf1Rs5U7xUJ6UjMJijwG3_OAfQJ9DSibuDqYuhvaS0wwbR6OUfQIBI6NFDdwXz5GL0wJZ82wmPjkKKrrX3ADNm1jsdJxb9fceZC2CfDC2aqe-XotiNwzbsA2vhkDpB5m3JOLYA_P7mWfSexjGKs6ii9E2fNjgYgqZA8TG-1CqvApZjzkCgWklntSP71W5Xrc8zSNkRPiSuoMEKtzVecH65t9utYA2ZneK-mVParwkydH3_hcx1l03CYj6p7HP33S5MsWtvDagWN3waRPfRtdUx2KTDUTKl0Rpt-Gb1cL8RWSctfQxrg8gGKmWYwGqoPhLcDmtPc7D1C6EmZaxp61YODRup2mIzFdRdCvoU8F3Ll9Tsgb8ja7gHra03g'}
driver.get("https://account.cnblogs.com/signin")
driver.add_cookie(c1)
driver.add_cookie(c2)
time.sleep(3)
driver.get("https://home.cnblogs.com/u/canglongdao/followers/")
f=driver.find_elements_by_xpath("//div[@class='avatar_list']/ul/li/a")
result=[]
for i in f:name=i.get_attribute("title")print(name)result.append(name)
print(result)

运行结果:

['偏爱也例外', '', '岑欢', '', 'NiuBiBoy!', '', '知识在于点滴的积累', '', '浅唱蛰伏', '', 'linofficer', '', '龙骑士大哥', '', '给明天的自己', '', '小熊软糖', '']

 将粉丝名称写入.txt文档

# rs=['偏爱也例外', '', '岑欢', '', 'NiuBiBoy!', '', '知识在于点滴的积累', '', '浅唱蛰伏', '', 'linofficer', '', '龙骑士大哥', '', '给明天的自己', '', '小熊软糖', '']
# print(rs[::2])
for i in result[::2]:with open("a.txt","a") as f: #追加#无a.txt,则新建;a.txt存在,则追加f.write(i+"\n")

参考代码:

# coding:utf-8
from selenium import webdriver
import time
driver=webdriver.Chrome()
# driver.get("https://account.cnblogs.com/signin")
# nlc=driver.get_cookies()
# print(len(nlc),nlc)
# driver.find_element_by_id("mat-input-0").send_keys("xxx@qq.com")
# driver.find_element_by_id("mat-input-1").send_keys("P@ssw0rd")
# driver.find_element_by_xpath("//span[@class='mat-button-wrapper']").click()
# time.sleep(6)
# lc=driver.get_cookies()
# print(len(lc),lc)
# 5 [{'domain': 'account.cnblogs.com', 'expiry': 1599210767, 'httpOnly': False, 'name': '4271c12252a544478175bac9772afc3d', 'path': '/', 'secure': False, 'value': '010720fb-f7e4-4f4b-b206-0e991ecf6f5b'}, {'domain': 'account.cnblogs.com', 'httpOnly': False, 'name': 'SERVERID', 'path': '/', 'secure': False, 'value': 'daace45bf36fef87f4742d8b633fdae3|1599208967|1599208966'}, {'domain': 'account.cnblogs.com', 'httpOnly': True, 'name': '.Cnblogs.Account.Session', 'path': '/', 'secure': False, 'value': 'CfDJ8K5MrGQfPjpFvRyctF%2BQEQcGP%2Bk0zUGAelDZwKkZE07wn7bgYbw56biK9%2FwoxKcs%2FmFFb%2B21xAjYxIXXQJeai7NvLoyDfgSr45CxhE9nwRKokI1nqtUdlD5wk2MHtHUO4kIFOTpe9gzKU%2F%2BDs%2B65eSMPAU62bfOS86QdUoNXH5qL'}, {'domain': 'account.cnblogs.com', 'httpOnly': False, 'name': 'XSRF-TOKEN', 'path': '/', 'secure': False, 'value': 'CfDJ8K5MrGQfPjpFvRyctF-QEQcyb192CHuZwpo_t9r1Ps07m_GVYNh15x2atqF3hGcynCnlxxqVFCWmUT5OqBV0zfYfYC3BjZ-7WUDux6AI1xLaMad3ETT6_MyakbxByaS76Nim_y5-i1_oX0aBl2U91xs'}, {'domain': 'account.cnblogs.com', 'httpOnly': True, 'name': '.Cnblogs.Account.Antiforgery', 'path': '/', 'secure': False, 'value': 'CfDJ8K5MrGQfPjpFvRyctF-QEQek9XiBoWIQkti8vvTbpqx-CFIWKb39vrCeVudMwHbcPXBWb8LBrlnlM0JzKwWlUlgaD5ioMqre_sd1nEFtrTGhAMmUsVWYxYta1gs4DkuYVinqEL6omAaSnZIJhoxLfp8'}]
# 5 [{'domain': '.cnblogs.com', 'expiry': 1599295374, 'httpOnly': False, 'name': '_gid', 'path': '/', 'secure': False, 'value': 'GA1.2.683535015.1599208975'}, {'domain': '.cnblogs.com', 'expiry': 1662280974, 'httpOnly': False, 'name': '_ga', 'path': '/', 'secure': False, 'value': 'GA1.2.1985506889.1599208975'}, {'domain': '.cnblogs.com', 'expiry': 1600504974, 'httpOnly': True, 'name': '.CNBlogsCookie', 'path': '/', 'secure': False, 'value': 'EB2AB3A42B8CEE723552C8644CAD13CEFA311FA3955FDB7A25A33EEB87199C843967F5791CB012543FD9AC374F535F23C228D4AC5E0373CAA6855768E5713BDF88D82BB97C38A668CDDEB72E0D5055467339189E'}, {'domain': '.cnblogs.com', 'expiry': 1599209034, 'httpOnly': False, 'name': '_gat', 'path': '/', 'secure': False, 'value': '1'}, {'domain': '.cnblogs.com', 'expiry': 1600504974, 'httpOnly': True, 'name': '.Cnblogs.AspNetCore.Cookies', 'path': '/', 'secure': False, 'value': 'CfDJ8K5MrGQfPjpFvRyctF-QEQcWJIxPwl8mHGJMd1DItl4C_m7X5ixG1-4yGpDWsiv3n9Iung2Yxk7eaHqXJ1rAGWYXeQF3OyXzSXfYHkPc7A7RPLekmvNk0dNucu8ssSF7ldaY1Nqsnx-q9O3U6JpZ_GCz8ed5jwuq1g8V_StxqpEq2ell4jFdrMmgA1GQudbiFYE1aPVcf1Rs5U7xUJ6UjMJijwG3_OAfQJ9DSibuDqYuhvaS0wwbR6OUfQIBI6NFDdwXz5GL0wJZ82wmPjkKKrrX3ADNm1jsdJxb9fceZC2CfDC2aqe-XotiNwzbsA2vhkDpB5m3JOLYA_P7mWfSexjGKs6ii9E2fNjgYgqZA8TG-1CqvApZjzkCgWklntSP71W5Xrc8zSNkRPiSuoMEKtzVecH65t9utYA2ZneK-mVParwkydH3_hcx1l03CYj6p7HP33S5MsWtvDagWN3waRPfRtdUx2KTDUTKl0Rpt-Gb1cL8RWSctfQxrg8gGKmWYwGqoPhLcDmtPc7D1C6EmZaxp61YODRup2mIzFdRdCvoU8F3Ll9Tsgb8ja7gHra03g'}]
# #
#手动从登陆后,获取到的cookie中,复制如下内容,赋值给c1,c2
c1={'domain': '.cnblogs.com', 'expiry': 1600504974, 'httpOnly': True, 'name': '.CNBlogsCookie', 'path': '/', 'secure': False, 'value': 'EB2AB3A42B8CEE723552C8644CAD13CEFA311FA3955FDB7A25A33EEB87199C843967F5791CB012543FD9AC374F535F23C228D4AC5E0373CAA6855768E5713BDF88D82BB97C38A668CDDEB72E0D5055467339189E'}
c2={'domain': '.cnblogs.com', 'expiry': 1600504974, 'httpOnly': True, 'name': '.Cnblogs.AspNetCore.Cookies', 'path': '/', 'secure': False, 'value': 'CfDJ8K5MrGQfPjpFvRyctF-QEQcWJIxPwl8mHGJMd1DItl4C_m7X5ixG1-4yGpDWsiv3n9Iung2Yxk7eaHqXJ1rAGWYXeQF3OyXzSXfYHkPc7A7RPLekmvNk0dNucu8ssSF7ldaY1Nqsnx-q9O3U6JpZ_GCz8ed5jwuq1g8V_StxqpEq2ell4jFdrMmgA1GQudbiFYE1aPVcf1Rs5U7xUJ6UjMJijwG3_OAfQJ9DSibuDqYuhvaS0wwbR6OUfQIBI6NFDdwXz5GL0wJZ82wmPjkKKrrX3ADNm1jsdJxb9fceZC2CfDC2aqe-XotiNwzbsA2vhkDpB5m3JOLYA_P7mWfSexjGKs6ii9E2fNjgYgqZA8TG-1CqvApZjzkCgWklntSP71W5Xrc8zSNkRPiSuoMEKtzVecH65t9utYA2ZneK-mVParwkydH3_hcx1l03CYj6p7HP33S5MsWtvDagWN3waRPfRtdUx2KTDUTKl0Rpt-Gb1cL8RWSctfQxrg8gGKmWYwGqoPhLcDmtPc7D1C6EmZaxp61YODRup2mIzFdRdCvoU8F3Ll9Tsgb8ja7gHra03g'}
driver.get("https://account.cnblogs.com/signin")
driver.add_cookie(c1)
driver.add_cookie(c2)
time.sleep(3)
driver.get("https://home.cnblogs.com/u/canglongdao/followers/")
f=driver.find_elements_by_xpath("//div[@class='avatar_list']/ul/li/a")
result=[]
for i in f:name=i.get_attribute("title")print(name)result.append(name)
print(result)# rs=['偏爱也例外', '', '岑欢', '', 'NiuBiBoy!', '', '知识在于点滴的积累', '', '浅唱蛰伏', '', 'linofficer', '', '龙骑士大哥', '', '给明天的自己', '', '小熊软糖', '']
# print(rs[::2])
for i in result[::2]:with open("a.txt","a") as f:f.write(i+"\n")

 运行结果:

偏爱也例外岑欢NiuBiBoy!知识在于点滴的积累浅唱蛰伏linofficer龙骑士大哥给明天的自己小熊软糖['偏爱也例外', '', '岑欢', '', 'NiuBiBoy!', '', '知识在于点滴的积累', '', '浅唱蛰伏', '', 'linofficer', '', '龙骑士大哥', '', '给明天的自己', '', '小熊软糖', '']

Selenium3+python3自动化(四十三)--爬取我的博客园粉丝的名称,并写入.text文件...相关推荐

  1. python爬虫入门教程-Python爬虫入门教程——爬取自己的博客园博客

    互联网时代里,网络爬虫是一种高效地信息采集利器,可以快速准确地获取网上的各种数据资源.本文使用Python库requests.Beautiful Soup爬取博客园博客的相关信息,利用txt文件转存. ...

  2. python爬虫教程-Python爬虫入门教程——爬取自己的博客园博客

    互联网时代里,网络爬虫是一种高效地信息采集利器,可以快速准确地获取网上的各种数据资源.本文使用Python库requests.Beautiful Soup爬取博客园博客的相关信息,利用txt文件转存. ...

  3. 【Python爬虫】爬了七天七夜,终于爬出了博客园粉丝数排行榜!

    文章发出不到30分钟就被首页下架了,默哀-- 起因 为了督促自己更加积极地写博客,我希望有一个排名系统能让我看到自己的进步.但是博客园对用户的排名体系相对是比较少的,主要是推荐博客排行和积分排行:但它 ...

  4. python爬虫抢演唱会_Python爬虫爬了七天七夜终于爬出了博客园粉丝数排行榜

    Python爬虫爬了七天七夜终于爬出了博客园粉丝数排行榜 [Python爬虫]爬了七天七夜,终于爬出了博客园粉丝数排行榜! 爬虫数据采集接单,大小不限,欢迎各位科研教师,学生,企业相关人员咨询,QQ: ...

  5. python爬虫难度排行_【Python爬虫】爬了七天七夜,终于爬出了博客园粉丝数排行榜!...

    [Python爬虫]爬了七天七夜,终于爬出了博客园粉丝数排行榜! 文章发出不到30分钟就被首页下架了,默哀-- 起因 为了督促自己更加积极地写博客,我希望有一个排名系统能让我看到自己的进步.但是博客园 ...

  6. 使用Python爬取CSDN历史博客文章列表,并生成目录

    使用Python爬取CSDN历史博客文章列表,并生成目录 这篇博客将介绍如何使用Python爬取CSDN历史博客文章列表,并生成目录. 2020年 2020年04月 cv2.threshold() 阈 ...

  7. python requests爬虫——爬取李开复博客信息(包括javascript部分信息)

    今天是国庆假期第二天,已经玩了一天了,今天整理一下前两天写的数据分析作业思路,给实验报告打一下底稿.供对爬虫有兴趣的小伙伴们参考,也希望给实验没完成的同学提供一点小小的帮助. 任务要求. 1)分析页面 ...

  8. python爬虫教程:基于python框架Scrapy爬取自己的博客内容过程详解

    前言 python中常用的写爬虫的库常有urllib2.requests,对于大多数比较简单的场景或者以学习为目的,可以用这两个库实现.这里有一篇我之前写过的用urllib2+BeautifulSou ...

  9. Python爬虫小实践:爬取任意CSDN博客所有文章的文字内容(或可改写为保存其他的元素),间接增加博客访问量...

    Python并不是我的主业,当初学Python主要是为了学爬虫,以为自己觉得能够从网上爬东西是一件非常神奇又是一件非常有用的事情,因为我们可以获取一些方面的数据或者其他的东西,反正各有用处. 这两天闲 ...

最新文章

  1. 网站建设设计的基本事项需了解!
  2. 【Python】 tempfile模块 临时文件和目录的处理
  3. WCF添加服务失败。服务元数据可能无法访问。请确保服务正在运行并且正在公开元数据。...
  4. C语言中基本的不平衡二进制搜索树实现(附完整源码)
  5. Linux连接状态为syn_recv,linux 服务器 syn*** 大量SYN_RECV状态处理
  6. chapter8.1、面向对象
  7. 使用css让文字两端对齐
  8. 程序员面试必备的网络编程知识
  9. win7计算机屏幕休眠,windows7系统怎么设置屏幕不休眠
  10. 锁定计算机后忘记密码怎么解开,win10开机密码忘记了怎么办?win10电脑忘记开机密码的解锁方法...
  11. nodejs开发环境安装-连载【1】-企业级系统开发实战连载系列 -技术栈 :vue、element-ui、qt、c++、sqlite
  12. 收录拒绝指定ip请求黑名单lua脚本、拒绝ip频次请求的lua脚本
  13. 管理计算机 ppt,PowerPoint(PPT) 2016
  14. c语言tab什么意思_收藏 | C语言最全入门笔记
  15. 桌面级创客工具 创客造物空间
  16. 电信联通魔百盒烽火HG680-J/V系列-卡刷固件包(可救砖)
  17. CSS3 文本多列 分栏
  18. Kubernetes基础3
  19. 金融学习之一——使用Tushare获取数据并制图
  20. ADINA System 9.2.5 Win64 Linux64 2CD(非线性有限元系统)

热门文章

  1. 手写字体识别资料汇总
  2. macOS完整安装程序下载
  3. TeX Live + TeXstudio macOS 下载及安装
  4. Excel文件双击两次才能显示内容的解决方案
  5. 软件测试面试如何写出HR青睐的简历?
  6. 股豆网:2019全国高校名单公布共计2956所 江苏省数量最多
  7. python爬取某信公众号所有信息,并批量下载公众号视频
  8. com.github.pagehelper.PageHelper cannot be cast to org.apache.ibatis.plugin.Interceptor
  9. json vue 出现次数_Vue 如何从两个 JSON 中遍历数据, 根据相同的 Key 为 DOM 赋值?
  10. Linux中的DRM 介绍