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

yipeiwu_com6年前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:3.x) 之前遇到需要使用列表降维的情况, 如: 原列表 : [[12,34],[57,86,1],[43,22,7],[1,[2,3]],6] 转化为 : [1...

Python笔记之工厂模式

工厂模式: “工厂”即表示一个负责创建其他类型的对象的类,通常情况下,一个工厂的对象会有一个或多个方法与之关联,这些方法用于创建不同类型的对象,工厂对象会根据客户端给方法传递的不同的参数...

Python实现计算文件MD5和SHA1的方法示例

本文实例讲述了Python实现计算文件MD5和SHA1的方法。分享给大家供大家参考,具体如下: 不多说,直接源码: #file md5 import sys; import hash...

Ubuntu下安装PyV8

这几天需要在使用PyV8来进行python与javascript的交互。之前在window下安装过,直接使用的exe安装的,也没有遇到什么问题。 结果这次在Ubuntu安装遇到了不少坑-...

使用tqdm显示Python代码执行进度功能

使用tqdm显示Python代码执行进度功能

在使用Python执行一些比较耗时的操作时,为了方便观察进度,通常使用进度条的方式来可视化呈现。Python中的tqdm就是用来实现此功能的。 先来看看tqdm的进度条效果:  ...