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判断字符串是否xx开始或结尾的示例

判断是否xx开始 使用startswith 示例代码: String = "12345 上山打老虎" if str(String).startswith('1'): #判断Str...

pandas数据处理进阶详解

一、pandas的统计分析 1、关于pandas 的数值统计(统计detail 中的 单价的相关指标) import pandas as pd # 加载数据 detail =...

读取json格式为DataFrame(可转为.csv)的实例讲解

有时候需要读取一定格式的json文件为DataFrame,可以通过json来转换或者pandas中的read_json()。 import pandas as pd import j...

Python 随机生成中文验证码的实例代码

python代码复制代码 代码如下: # -*- coding: utf-8 -*-  import Image,ImageDraw,ImageFont &nbs...

opencv之为图像添加边界的方法示例

opencv之为图像添加边界的方法示例

我们经常会有对图像边缘做扩展的需求.比如 希望卷积后得到的矩阵大小不变希望改变图像大小,但是不改变宽高比opencv实现 opencv中使用copyMakeBorder()来完成这一功能...