xml地图|网站地图|网站标签 [设为首页] [加入收藏]
操作输入框,冒泡排序
分类:编程

一个web页面一定少不了输入框或者按钮这两种元素,那么在Python里如何使用Selenium操作web页面里的输入框和按钮呢?本文带你简单入门。

百度百科

又是一道面试题,我只想到两种方式:

本文采用了一个例子,就是利用Selenium打开百度网页,然后进行搜索关键字“Python”,执行搜索动作。具体代码如下:

冒泡排序是笔试面试经常考的内容,虽然它是这些算法里排序速度最慢的

第一种:循环字符串,判断每个字符串的类型,再根据类型对该字符进行操作(转大写、转小写、不变或舍弃)

Python

原理:从头开始,每一个元素和它的下一个元素比较,如果它大,就将它与比较的元素交换,否则不动。

static void Main(string[] args)
{
    //大写转小写,小写转大写,数字保留,其他除外
    string str = "Aa Bb 123!@#";     //测试字符串
    string newStr = string.Empty;    //用于存放新字符串

    //循环字符串
    foreach (char item in str)
    {
        if (item >= 'a' && item <= 'z')
        {
            //小写字母转大写
            newStr += item.ToString().ToUpper();
        }
        else if (item >= 'A' && item <= 'Z')
        {
            //大写字母转小写
            newStr += item.ToString().ToLower();
        }
        else if (item >= '0' && item <= '9')
        {
            //数字不变
            newStr += item.ToString();
        }
    }
    //打印
    System.Console.WriteLine(newStr);
    System.Console.ReadLine();
}
# Autor: 5bug
# WebSite: http://www.XuePython.wang
# 学Python网QQ群: 643829693
from selenium import webdriver

driver = webdriver.Chrome("C:/Users/5bug/AppData/Local/Google/Chrome/Application/chromedriver.exe")
# driver.maximize_window()
driver.get('https://www.baidu.com')
input = driver.find_element_by_id('kw')
input.send_keys('Python')
button = driver.find_element_by_xpath('//*[@id="su"]')
print(button.get_attribute("value"))
button.click()

这意味着,大的元素总是在向后慢慢移动直到遇到比它更大的元素。所以每一轮交换完成都能将最大值

第二种:将字符串转为byte[],循环byte[],使用ASCII码进行判断

运行效果:

冒到最后。 

static void Main(string[] args)
{
    //大写转小写,小写转大写,数字保留,其他除外
    string str = "Aa Bb 123!@#";     //测试字符串
    string newStr = string.Empty;    //用于存放新字符串

    //字符串-->byte[] 
    ASCIIEncoding ascii = new ASCIIEncoding();
    byte[] bytes = ascii.GetBytes(str);

    //循环byte[] 
    foreach (byte item in bytes)
    {
        //临时存放
        byte[] temp = new byte[] { item };

        if (item >= 97 && item <= 122)
        {
            //小写字母转大写
            newStr += ascii.GetString(temp).ToUpper();
        }
        else if (item >= 65 && item <= 90)
        {
            //大写字母转小写
            newStr += ascii.GetString(temp).ToLower();
        }
        else if (item >= 48 && item <= 57)
        {
            //数字不变
            newStr += ascii.GetString(temp);
        }
    }
    //打印
    System.Console.WriteLine(newStr);
    System.Console.ReadLine();
}

图片 1

原出处:

备注:数字,字母的ASCII码对照表

这个例子里面主要使用了如下几个方法:

冒泡算法C

/*
0~9数字对应十进制48-57
a~z字母对应的十进制97-122十六进制61-7A
A~Z字母对应的十进制65-90十六进制41-5A
*/
  • find_element_by_id:通过元素id来找元素对象,参数为元素id

  • find_element_by_xpath:通过xpath来找元素对象,参数为元素xpath

  • send_keys:向输入框内发送文本,参数为文本内容

  • get_attribute:获取某元素的某个属性,参数为属性名

  • 文本输入框还有一个方法clear() 用于清空当前文本

namespace 数组排序

结果打印:

本文首发于学Python网:http://www.XuePython.wang

{

图片 2

``class Program

 

``{

``static void Main(``string``[] args)

``{

本文由澳门新葡亰手机版发布于编程,转载请注明出处:操作输入框,冒泡排序

上一篇:没有了 下一篇:没有了
猜你喜欢
热门排行
精彩图文