获取母校师资信息

import os
import csv
import requests
from bs4 import BeautifulSoup
from tqdm import tqdmdef make_dir(path):if not os.path.exists(path):os.mkdir(path)def get_resp(url):headers = {'User-Agent': r'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.4951.67 Safari/537.36'}resp = requests.get(url=url, headers=headers)return respdef get_all(text, selector):soup = BeautifulSoup(text, 'lxml')return soup.select(selector)if __name__ == '__main__':make_dir('石室中学师资')resp = get_resp('http://www.cdshishi.net/project.aspx?mid=131&xk=0')fliters = get_all(resp.text, 'body div.select-box.fr > select > option')fliters = {x.text: 'http://www.cdshishi.net/project.aspx' + x.attrs['value'] for x in fliters[2:]}for i in tqdm(fliters):make_dir(f'石室中学师资/{i}')resp = get_resp(fliters[i])teachers = get_all(resp.text, 'body ul.pTeam-list.clearfix > li')f = open(f'石室中学师资/{i}/{i}.txt', 'a', encoding='utf-8', newline='')writer = csv.writer(f)writer.writerow(['学科', '教师姓名', '教师头衔'])for t in tqdm(teachers):name = t.select_one('h3').texthonor = t.select_one('div.c').textwriter.writerow([i, name, honor])img_link = 'http://www.cdshishi.net/' + t.attrs['imgs']img = get_resp(img_link).contentopen(f'石室中学师资/{i}/{name}老师.jpg', 'wb').write(img)

【玩具】获取母校师资信息相关推荐

  1. 查询Master下的系统表和系统视图获取数据库的信息和简单的渗透测试

    在SQL中可以通过查询Master下的系统表(sys)和系统视图(information_schema)获取数据库的信息.SQL2000和SQL2005的结构略有不同. 系统表结构参考系统表详细说明. ...

  2. uniapp同步获取用户信息_微信小程序云开发教程微信小程序的API入门获取用户身份信息系列API...

    同学们大家好,我是小伊同学,上一节我们介绍了一些常用API,今天我们接着来学习一组API,那就是获取用户身份信息的API. 在微信小程序中,我们往往需要获取用户的身份信息,比如昵称.头像.性别.地区等 ...

  3. iphone adb android,通过ADB获取Android手机信息

    1.获取手机体系信息(CPU,厂商名称等) adbshell"cat/system/build.prop|grep"product"" 2.获取手机体系版别 a ...

  4. 获取BT节点信息bittorrent-discovery

    2019独角兽企业重金招聘Python工程师标准>>> 获取BT节点信息bittorrent-discovery BT/磁力都是常见的P2P下载方式.用户作为一个节点node从其他用 ...

  5. python 客户端 如何获取手机_Python学习---Django的request扩展[获取用户设备信息]

    关于Django的request扩展[获取用户设备信息] settings.py INSTALLED_APPS = [ ... 'app01', # 注册app ] STATICFILES_DIRS ...

  6. 如何在系统崩溃时从C++中获取函数调用栈信息?

    这篇文章主要讲述在 Linux 和 Windows 这 2 个平台上,如何用C++ 来捕获函数调用栈里的信息. 一.前言 程序在执行过程中 crash 是非常严重的问题,一般都应该在测试阶段排除掉这些 ...

  7. MySQL SHOW TABLE STATUS 获取表的信息

    show table status 获取表的信息 show table status like 'tableName' 1.Name 表名称 2.Engine: 表的存储引擎 3.Version: 版 ...

  8. Java获取异常堆栈信息

    Java获取异常堆栈信息 参考文章: (1)Java获取异常堆栈信息 (2)https://www.cnblogs.com/zhi-leaf/p/6288769.html 备忘一下.

  9. linux c 通过 pid 获取 进程相关信息 cmdline

    linux系统命令ps和top都是通过读取/proc/$PID 目录下的信息获取进程的相关信息, 它遍历/proc目录下的首字符为数字的目录,获取系统进程的信息. 我们经常会把pid写到/var/ru ...

最新文章

  1. 2022-2028年中国防水橡胶布行业市场发展模式及投资前景分析报告
  2. 关于RF中类似于异常(TRY语句)情况的处理
  3. linux curl发送POST请求
  4. python代码技巧_几个小技巧让你的Python代码更Pythonic
  5. 目标检测二十年间那些事儿——加速与优化
  6. C++标准库vector及迭代器
  7. UML-based workflow |wfmc|面向对象的概念
  8. 5场直播丨PostgreSQL、openGauss、Oracle、GoldenDB、EsgynDB
  9. 域中添加电脑提示重名
  10. CodeBlocks13.12汉化以及去掉注释及字符串的下划线
  11. 螺旋模型、喷泉模型、增量模型的特点
  12. 了解腾讯云云支付CPay特性及应用场景
  13. 局域网中文件共享方案介绍(Win10版)
  14. 两位顶级社会工程学大师:凯文-米特尼克和 弗兰克-阿巴内尔
  15. AES加密解密C语言实现
  16. 三维空间刚体运动——(1)齐次坐标与旋转矩阵
  17. OpenCV - SIFT-SURF(Python实现)
  18. ubuntu16.04登录界面输入用户名密码后又回到登录界面
  19. 梯度下降法-优化算法-机器学习
  20. 网页挂马的原理和实现方式

热门文章

  1. 最受欢迎的家居饰品-留声机
  2. 宣发工厂 – 区快链一站式区块链媒体宣发平台—数字货币软文撰写_广告投放_区块链孵化
  3. 道听途说vs实际经历——那些你以为的编程
  4. 服务器被挖矿怎么办,如何彻底删除挖矿文件
  5. 嵌入式linux下u盘升级的设计
  6. 修复 win10 打印服务器失败,win10专业版中使用这些解决方案修复打印机系统错误1797...
  7. 2018WordPress本地头像加速
  8. Linux使用free命令buff/cache过高
  9. vue2.0引用腾讯地图
  10. 爱情八十一课,可预测的分手