【程序员趣味】用Python制作带字小人举牌
一、安装selenium库
pip install selenium
结果如下:
1.chromedriver驱动的配置
如果你想要驱动谷歌浏览器,自动打开浏览器,必须匹配chromedriver驱动,否则会报错。
配置chromedriver驱动,一定要注意 “驱动” 和 “谷歌浏览器” 版本一定是要相匹配,否则不能使用。
2.检查谷歌浏览器的版本
提供一个地址
https://jingyan.baidu.com/article/95c9d20d74a1e8ec4f756149.html
点击“右上角三个点”
--> 点击“设置”
--> 点击 “关于chrome”
,出现如下界面。
3.下载chromedriver驱动
下面这个地址可以供大家选择各种版本驱动程序
http://chromedriver.storage.googleapis.com/index.html
从上面的图中可以看出,谷歌浏览器的版本是【92.0.4515.131】,这里我们选择的对应版本的驱动,然后点进该文件后,可以根据我们的操作系统,选择对应的驱动。
4.chromedriver驱动的配置
解压上述下载好的文件,并将解压后我们得到的chromedriver.exe文件,需要放到Python的安装路径下,你可以查看你的Python解释器安装在哪里,然后,将chromedriver.exe放置和Python.exe在一起
5.检验selenium是否可用
使用下面两行代码,如果谷歌浏览器成功被驱动打开,证明上述安装和配置没问题。
from selenium import webdriver
browser = webdriver.Chrome()
结果如下:
二、selenium库制作举牌小人
提供一个网址,可以利用这个网址,基于selenium库,制作一个好看的举牌小人。
http://www.atoolbox.net/Tool.php?Id=789
1.分析网页
首先,我们打开上述网址,操作步骤简单的描述下。
- 在①处,输入相关字
- 在②处的
生成
,此时该图会发生变化 - 最后点击
下载
,保存早本地使用
然后,我们就要使用库,模拟人为操作浏览器,实现下面这三步操作。
- 定位“输入框”
- 定位“生成”这二字的节点
- 定位“下载”这二字的节点
点击F12
,打开开发者工具,我们先来定位“输入框”
,可以看到这里的id属性是up-content
。
再来定位“生成”
这二字的节点,可以看到这里的id属性是preview
。
最后再来定位“下载”
这二字的节点,可以看到这里的id属性是download
。
在selenium中,有如下多种方法,来定位节点。这个其实就是定位方法,没必要多讲述。由于我这里是通过id属性,定位对应节点,因此使用的方法就是find_element_by_id
。
上代码,代码中有详细的注释,就算是新手都能一看就懂的。
from selenium import webdriver
import time# 定义一个input输入函数,这就是待输入的关键词
keyword = input("请输入关键词:")# 创建浏览器对象,该操作会自动帮我们打开Google浏览器窗口
browser = webdriver.Chrome()# 调用浏览器对象,向服务器发送请求。该操作会打开Google浏览器,并跳转到 指定网址网页
browser.get("http://www.atoolbox.net/Tool.php?Id=789")# 最大化窗口(写不写无所谓,你可以尝试一下效果)
browser.maximize_window()# 定位“输入框”,定位后直接调用send_keys()方法,往该输入框输入关键字
browser.find_element_by_id("up-content").send_keys(keyword)# 再定位“生成”节点,然后调用click()方法,模拟认为点击这个按钮
browser.find_element_by_id('preview').click()# 等待个几秒钟(>=5),再点击下载,不要省略这一步【为了让浏览器饭响应完全】
time.sleep(3)# 最后再定位“下载”按钮,同样使用click()方法,模拟认为点击这个按钮;
browser.find_element_by_id('download').click()
结果如下:
这个图片的下载位置,就是谷歌浏览器的默认下载地址,我们可以修改到指定文件夹,那么所下载的图片就都在指定位置了。
你们的三连(点赞,收藏,评论)是我持续输出的动力,感谢。①有趣的源码与学习经验,②工具安装包,③专业解答,④学习资料共享
【程序员趣味】用Python制作带字小人举牌相关推荐
- java程序员_Java和Python的区别 好程序员帮大家解读
Java和Python的区别 好程序员今天先来解读Java编程语言的优势,人工智能和大数据火爆一时,随之而来,引起了编程语言的人气暴涨.而Java和Python作为最炙手可热的编程语言从一开始便赢得了 ...
- python跑神经网络_程序员深夜用Python跑神经网络,只为用中二动作关掉台灯!
原标题:程序员深夜用Python跑神经网络,只为用中二动作关掉台灯! 关注 文章源于网络,如有侵权请联系删除. 对于上了床就再也不想下来的人来说,关灯成为睡觉前面临的最大挑战! 然而这一届网友永远不会 ...
- 聊天没有表情包被嘲讽,程序员直接用python爬取了十万张表情包
聊天没有表情包被嘲讽,程序员直接用python爬取了十万张表情包 前言 分析页面 具体实现 解析页面 获取网页内容 解析网页内容 文件下载 多线程下载 成果 总结 前言 事情要从几天前说起,我有一个朋 ...
- 程序员女朋友礼物python代码_@程序员,用 Python 给女朋友准备个儿童节礼物可好?...
原标题:@程序员,用 Python 给女朋友准备个儿童节礼物可好? 作者 | 猿媛牧场 现在谈个恋爱.结个婚是真的炸啊.你 2.14 要送礼物,我认了,必须送啊,没有理由不送啊:3.14 白色情人节, ...
- python培训机构哪家靠谱_好程序员告诉你Python机构哪家比较靠谱
原标题:好程序员告诉你Python机构哪家比较靠谱 诚如大家所知,Python语言的就业方向多样,大体上可以划分为:Linux运维.Python自动化测试.Python全栈工程师.数据分析.人工智能等 ...
- 如何用python做一个会聊天的女朋友_戏精程序员,用python开发了一个女朋友,天天秀恩爱...
很多人都知道,程序员大部分都是单身狗,然而,无奈Python实在太强大,居然可以用来开发一个女朋友出来. 其实,这个女朋友类似很多视频中,那些假装自己有女朋友或男朋友的人一样,也是在假装哦,但是程序员 ...
- 视频教程-程序员入门指南-Python
程序员入门指南 从事数据科学以及机器学习行业数年 宫聚仁 ¥49.00 立即订阅 扫码下载「CSDN程序员学院APP」,1000+技术好课免费看 APP订阅课程,领取优惠,最少立减5元 ↓↓↓ 订阅后 ...
- python技术栈全景图_程序员之数据分析Python技术栈
程序员之数据分析Python技术栈 Python是一种非常流行的脚本语言,其还提供了一个科学技术栈,可以进行快捷方便的数据分析,本系列文章将聚焦在如何使用基于Python的技术栈来构建数据分析的工具集 ...
- 用c语言400行代码小游戏,程序员400行代码制作翻牌游戏解决无聊时间
原标题:程序员400行代码制作翻牌游戏解决无聊时间 上班感觉累,很想放假,但是放假在家又感觉非常无聊,总是不知道干什么,又感觉还不如上班呢,反正无聊不如练练写小游戏吧,即练习了代码,做完后还能接着玩, ...
最新文章
- ubuntu16.04安装UR3/UR5/UR10机械臂的ROS驱动并实现gazebo下Moveit运动规划仿真以及真实UR3机械臂的运动控制(1)
- js面向对象和继承的碎碎念
- emwin自定义消息问题
- 技术人创业建站简略指南(第一季)
- Sqlite使用简单教程
- python面向对象使用方法_python面向对象之方法
- 仿英雄联盟网页HTML代码 学生网页设计与制作期末作业下载 大学生网页设计与制作成品下载 DW游戏介绍网页作业代码下载
- PCB解决(Failed to add class member)问题
- java 获取vm配置参数_如何获取Java中的Java VM规范?
- Java解决高并发下商品库存更新
- 第一章 由内而外全面造就自己
- csgo服务器显示指令,CSGO国服控制台怎么打开 CSGO国服指令代码大全
- 【转】表情识别(一)--传统方法概述
- Java、JSP服装销售管理系统
- Js根据拼音首字母分组
- 《寂静岭》完全资料手册
- Java程序设计 # 3
- 监控dns流量有哪些方法?
- 基于unity+HTC VIVE的室内漫游交互(教你如何“无代码”VR交互)
- [蓝桥杯][2019年第十届真题]外卖店优先级、修改数组、糖果、特别数的和、等差数列
热门文章
- 「彩票假说」要修正?王言治团队:神经网络要「中奖」,秘密在于学习率!|ICML 2021...
- 老师买50斤小龙虾给学生上实验课,网友:我还能有心思上课?
- 比Keras更好用的机器学习“模型包”:无需预处理,0代码上手做模型
- 知乎13万赞!为何很多名校毕业生,都输在了人生后半程
- Ubuntu 镜像使用帮助
- 爬虫之requests模块在headers参数中携带cookie发送请求
- 尚硅谷学习笔记-节点的常用属性和方法
- 代替以前的F5,Ctrl+r!
- 细粒度图像分割 (FGIS)
- 5 种将死的编程语言!