Python获取统计自己的qq群成员信息的方法

yipeiwu_com5年前Python基础

首先说明一下需要使用的工具以及技术:python3 + selenium

selenium安装方法:pip install selenium

前提:获取自己的qq群成员信息,自己必须是群主或者管理员,然后通过管理页面进入到成员高级管理网页端,就可以对数据进行爬取了!

 步骤:

①:首先安装环境 selenium库,selenium是一个自动化库,但是使用它必须用到浏览器驱动,不同的浏览器有不同的驱动,所以需自行下载,我这里是chrome浏览器。

②:运行 程序,然后会需要点击一键登录按钮,点击即可,点击完后,整个页面还未加载全所有的成员信息,所以需要将滚动条下拉至底。

③:等待运行结束,结束后 同目录下就会出现一个xslx文档,里面就是所有的群成员信息

话不多说,上代码就完了!

from selenium import webdriver
from time import sleep
#1.创建Chrome浏览器对象,这会在电脑上在打开一个浏览器窗口
browser = webdriver.Chrome(executable_path ="D:\chromedownload\chromedriver")
#2.通过浏览器向服务器发送URL请求
browser.get("https://qun.qq.com/member.html#gid=951192978")
sleep(20)
#browser.sleep(3)
all_number_nickname = browser.find_elements_by_xpath('//*[@class="list"]/tr/td[3]/span[1]')
all_number_name = browser.find_elements_by_xpath('//*[@class="list"]/tr/td[4]/span[1]')
all_number_order = browser.find_elements_by_class_name('td-no')
all_number_qq = browser.find_elements_by_xpath('//*[@class="list"]/tr/td[5]')
all_number_sex = browser.find_elements_by_xpath('//*[@class="list"]/tr/td[6]')
all_number_qqage = browser.find_elements_by_xpath('//*[@class="list"]/tr/td[7]')
all_number_intime = browser.find_elements_by_xpath('//*[@class="list"]/tr/td[8]')
all_number_marks = browser.find_elements_by_xpath('//*[@class="list"]/tr/td[9]')
all_number_lastsaytime = browser.find_elements_by_xpath('//*[@class="list"]/tr/td[10]')
# for i in [all_number_qq,all_number_nickname,all_number_name,all_number_order,all_number_sex,all_number_qqage,all_number_intime,all_number_marks,all_number_lastsaytime]:
#   for j in i:
#     print(j.text)
list=[]
for k in range(len(all_number_qq)):
  list.append([])
  list[k].append(all_number_qq[k].text)
  list[k].append(all_number_nickname[k].text)
  list[k].append(all_number_name[k].text)
  list[k].append(all_number_order[k].text)
  list[k].append(all_number_sex[k].text)
  list[k].append(all_number_qqage[k].text)
  list[k].append(all_number_intime[k].text)
  list[k].append(all_number_marks[k].text)
  list[k].append(all_number_lastsaytime[k].text)
import openpyxl
def write_excel_xlsx(path, sheet_name, value):
  index = len(value)
  workbook = openpyxl.Workbook()
  sheet = workbook.active
  sheet.title = sheet_name
  for i in range(0, index):
    for j in range(0, len(value[i])):
      sheet.cell(row=i+1, column=j+1, value=str(value[i][j]))
  workbook.save(path)
  print("xlsx格式表格写入数据成功!")
book_name_xlsx = 'python小白交流群成员.xlsx'
sheet_name_xlsx = 'python小白交流群成员'
value = list
write_excel_xlsx(book_name_xlsx, sheet_name_xlsx, value)

总结

以上所述是小编给大家介绍的Python获取统计自己的qq群成员信息的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对【听图阁-专注于Python设计】网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

相关文章

Python基于回溯法子集树模板解决选排问题示例

Python基于回溯法子集树模板解决选排问题示例

本文实例讲述了Python基于回溯法子集树模板解决选排问题。分享给大家供大家参考,具体如下: 问题 从n个元素中挑选m个元素进行排列,每个元素最多可重复r次。其中m∈[2,n],r∈[1...

python DataFrame转dict字典过程详解

python DataFrame转dict字典过程详解

这篇文章主要介绍了python DataFrame转dict字典过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 背景:将商品i...

python中协程实现TCP连接的实例分析

在网络通信中,每个连接都必须创建新线程(或进程) 来处理,否则,单线程在处理连接的过程中, 无法接受其他客户端的连接。所以我们尝试使用协程来实现服务器对多个客户端的响应。 与单一TCP...

Python的Tornado框架实现异步非阻塞访问数据库的示例

tornado即是一个http非阻塞服务器, 就要用起来, 我们将用到tornado框架 ,mongodb数据库 以及motor(mongodb的异步驱动).来简单实现tornado的非...

分分钟入门python语言

Python 是 90 年代初由 Guido Van Rossum 创立的。它是当前最流行的程序语言之一。它那纯净的语法令我一见倾心,它简直就是可以运行的伪码。 请注意:本文以 Pyth...