如何delphi7中添加TClientSocket 组件

在Component->instal package
选择ADD添加borland/delphi/bin/dclsockets70.bpl
确认重新打开,就成功添加了TClientSocket

然后TClientSocket和TServerSocket控件就会出现在Internet页上了

在线程中动态生成的ClientSocket不触发OnConnect和OnRead事件,怎么办?
在线程的构造函数中生成ClientSocket:
__fastcall TSubTh::TSubTh(bool CreateSuspended)
: TThread(CreateSuspended)
{
//CS在头文件中作为类的全局变量声明
CS = new TClientSocket(0);
CS->ClientType = ctNonBlocking;
CS->OnRead = CSRead;
CS->OnConnect = CSConnect;
CS->Address = "127.0.0.1";
CS->Port = 2020;
}
 

https://www.cnblogs.com/xiao-xue-di/p/11531905.html

import ddddocr #pip3 install ddddocr

python package Index python库查询
www.pypi.org

二、非测试破解验证码
requests
selenimu:简单图形、滑块、cookies、option
appium:手机短信
ocr:光学字符识别
----ddddocr
----tesseract
----tesserocr和pytesseract(封装了上面的
----百度OCR接口

三、selenium实现简单
核心API:
----webdriver对象方法和属性
----webelement对象方法和属性
ddddocr库的api

=========================
# 1 从selenium库导入webdriver模块
from selenium import webdriver

# 2 打开浏览器
driver = webdriver.Chrome() #实例一个浏览器,

# 3 在打开的浏览器输入网址
driver.get('http://***')

# 4 输入用户名 send_keys
# 4.1 定位元素 css xpath chromedevtools
# driver.find_element(定位策略,定位名)
driver.find_element('id','namename').send_keys('bxf')
#driver.send_keys()

# 5 输入密码 send_keys
driver.find_element('id','password').send_keys('123')

# 6 验证码
ele_codepic = driver.find_element('css selector','img')
#ele_codepic.screenshot_as_png #源代码返回betys
#二进制写入图片
with open('codepic.png','wb') as f:
f.writ(ele_codepic.screenshot_as_png)

#分析图片数据得到其文本
# import ddddocr
ocr = ddddocr.DdddOcr()
code_text = ocr.classification(ele_codepic.screenshot_as_png)

#7 输入验证码
driver.find_element('id','code').send_keys(code_text)

# 8 点击等录
driver.find_element('id','btn').click()


1.输入内容

  • send_keys('valve'):输入内容valve
#定位输入框
input_box = browser.find_element_by_id('kw')
try:
#输入内容:selenium
input_box.send_keys('selenium')
print('搜索关键词:selenium')
except Exception as e:
print('fail') #输出内容:搜索关键词:selenium

2.点击按钮

  • click():点击按钮
#定位搜索按钮
button = browser.find_element_by_id('su')
try:
#点击搜索按钮
button.click()
print('成功搜索')
except Exception as e:
print('fail搜索')
#输出内容:成功搜索

3.清空输入框

  • clear():清空输入框
#clear():清空输入框
try:
input_box.clear()
print('成功清空输入框')
except Exception as e:
print('fail清空输入框')
#输出内容:成功清空输入框

4.输入内容、点击按钮、清空输入完整实例

from selenium import webdriver
import time browser = webdriver.Chrome()
browser.maximize_window() #设置浏览器大小:全屏
browser.get('https://www.baidu.com') #定位输入框
input_box = browser.find_element_by_id('kw')
try:
#输入内容:selenium
input_box.send_keys('selenium')
print('搜索关键词:selenium')
except Exception as e:
print('fail')
#输出内容:搜索关键词:selenium #定位搜索按钮
button = browser.find_element_by_id('su')
try:
#点击搜索按钮
button.click()
print('成功搜索')
except Exception as e:
print('fail搜索')
#输出内容:成功搜索 #clear():清空输入框
try:
input_box.clear()
print('成功清空输入框')
except Exception as e:
print('fail清空输入框')
#输出内容:成功清空输入框

5.submit():模拟‘回车’操作

  • submit():通常应用于提交表单;例如:搜索框输入内容后的回车操作。
from selenium import webdriver
import time browser = webdriver.Chrome()
browser.maximize_window() #设置浏览器大小:全屏
browser.get('https://www.baidu.com') #定位输入框
input_box = browser.find_element_by_id('kw')
#输入关键词:selenium
input_box.send_keys('selenium')
#模拟回车操作
try:
input_box.submit()
print('成功回车')
except Exception as e:
print('fail')
#输出内容:成功回车

selenium,web自动化测试的更多相关文章

  1. python selenium web自动化测试完整项目实例

    问题: 好多想不到的地方,中间经历了一次重构,好蛋疼: xpath定位使用的不够熟练,好多定位问题,只能靠强制等待解决: 存在功能重复的方法,因为xpath定位不同,只能分开写,有时间可以继续优化: ...

  2. Python+Selenium - Web自动化测试(一):环境搭建

    清单列表: Python 3x Selenium Chrome Pycharm 一.Python的安装: Python官网下载地址:https://www.python.org/ 1.  进入官网地址 ...

  3. Python+Selenium - Web自动化测试(二):元素定位

    前言 前面已经把环境搭建好了,现在开始使用 Selenium 中的 Webdriver 框架编写自动化代码脚本,我们常见的在浏览器中的操作都会有相对应的类方法,这些方法需要定位才能操作元素,不同网页的 ...

  4. Java&Selenium Web自动化测试框架理念

    一.自动化测试含义 在自动化测试领域内流传着一个说法:单元测试才是自动化测试的核心,在自动化测试里,无论框架何等完美都不可能脱离单元测试,单元测试将会是自动化测试里最小的单位,把它看作单位一,若干个单 ...

  5. Web自动化测试学习方向(Selenium)

    目前越来越多的人想学自动化测试,认为自动化测试好牛逼.经常在测试交流群里看见有HR发招聘广告说:招初级(功能测试),招中级(性能测试),招高级(自动化测试)...... 我不去讨论他们这个初中高级的说 ...

  6. Web自动化测试 Selenium 1/3

    Selenium 名字的来源 在这里,我还想说一下关于 Selenium 名字的来源,很有意思的 : > : Selenium 的中文名为 “ 硒 ” ,是一种化学元素的名字,它 对 汞 ( M ...

  7. TestNG测试框架在基于Selenium进行的web自动化测试中的应用

    转载请注明出自天外归云的博客园:http://www.cnblogs.com/LanTianYou/ TestNG+Selenium+Ant TestNG这个测试框架可以很好的和基于Selenium的 ...

  8. web自动化 基于python+Selenium+PHP+Ftp实现的轻量级web自动化测试框架

    基于python+Selenium+PHP+Ftp实现的轻量级web自动化测试框架   by:授客 QQ:1033553122     博客:http://blog.sina.com.cn/ishou ...

  9. 开源Web自动化测试工具Selenium IDE

    Selenium IDE(也有简写SIDE的)是一款开源的Web自动化测试工具,它实现了测试用例的录制与回放. Selenium IDE目前版本为 3.6 系列,支持跨浏览器运行,所以IDE的UI从原 ...

  10. Node.js结合Selenium做Web自动化测试

    发现腾讯课堂上有个node.js结合Selenium做Web自动化测试的教学视频, 听来感觉不错,一来老师讲的还不错,二来node.js这门语言会越来越热,学会总没什么坏处,三来发现CukeTest这 ...

随机推荐

  1. arcgis创建sqlserver企业级空间数据库过程中出现的问题及解决方案

    在arcgis中创建sqlserver版本的企业空间数据库过程中,出现了多种问题,现把问题的现象.原因和解决方案记录下来,以防遗忘(年纪大了). 1 用sa账号创建空间数据库提示创建失败15456 安 ...

  2. 快速修改kafka的broker配置或topic配置

    下载开源的kafka界面客户端KafkaKing:https://github.com/Bronya0/Kafka-King 连接后,双击broker配置,或者双击topic配置: 修改好后回车保存就 ...

  3. odoo14里面附件传输接口

    @http.route('/fmcg/download/pdf', type='http', auth="public", csrf=False, cors='*') def up ...

  4. 异常分析 JedisConnectionException: java.net.SocketTimeoutException: Read timed out

    问题描述   测试Redis分布式锁的时候,如果一次执行大量数据,系统会报出如下异常: JedisConnectionException: java.net.SocketTimeoutExceptio ...

  5. Django Web应用开发实战第二章

    一.基本配置信息 """ Django settings for myblog project. Generated by 'django-admin startproj ...

  6. 【中英】【吴恩达课后测验】Course 5 - 序列模型 - 第一周测验

    [中英][吴恩达课后测验]Course 5 -序列模型 - 第一周测验 - 循环神经网络 上一篇:[课程4 - 第四周编程作业]※※※※※ [回到目录]※※※※※下一篇:[待撰写-课程5 -第一周编程 ...

  7. 2025 ZJ 中考数学压轴题的一种解析几何做法

    提示:文章含有较多 \(\LaTeX\),可能加载时间较长,125% 缩放页面,更好的公式体验. 同步发表于 洛谷 [题目描述] (知乎的,侵删,红色的是我加的线,帮助 STD 的讲解) 这里我们只考 ...

  8. stm32主要用来做什么?

    STM32主要用来做什么?一个从机械转行的十年老兵血泪经验 写在前面:一个改变命运的小芯片 说起STM32,我真的是百感交集. 十年前,我还是个刚从某211大学机械专业毕业的愣头青,对嵌入式.单片机这 ...

  9. Xamarin.Android -- EditText输入无法实时显示问题

    参考文章:EditText输入内容不显示_edittext输入没有显示-CSDN博客 https://blog.csdn.net/guodashen007/article/details/108768 ...

  10. Excel加载宏.xla文件的使用方法

    将文件保存到本地的一个位置. 2.打开任意的excel表格,并按照如下的图片所示的步骤操作: 1)点击development(开发工具)add-ins浏览,然后找到刚刚文件的保存位置并选择文件(如果没 ...