资讯专栏INFORMATION COLUMN

python操作selenium的基本操作

Half / 1388人阅读

摘要:引入鼠标操作类引入类操作现在将浏览器最大化打印备案信息杨彦星打印输入框的大小现在我将设置浏览器为宽,高显示现在我将回到刚才的页面现在我将回到之前的页面现在我将打开杨彦星的网站进行搜索以下将以登录人人网来进行上面的综合应用这个是以选择元素剪

#coding:utf-8
from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains #引入ActionChains鼠标操作类
from selenium.webdriver.common.keys import Keys #引入keys类操作
import time

def s(int):
    time.sleep(int)
browser = webdriver.Chrome()
browser.get("http://www.baidu.com")
print "现在将浏览器最大化"
browser.maximize_window()
text = browser.find_element_by_name("tj_duty").text
print text #打印备案信息

browser.find_element_by_id("kw1").send_keys(u"杨彦星")
print browser.find_element_by_id("kw1").get_attribute("type")
print browser.find_element_by_id("kw1").size #打印输入框的大小
browser.find_element_by_id("su1").click()
time.sleep(3)

print "现在我将设置浏览器为宽480,高800显示"
browser.set_window_size(480,800)
browser.get("http://m.mail.10086.cn")
time.sleep(3)

print "现在我将回到刚才的页面"
browser.maximize_window()
browser.back()
time.sleep(3)

print "现在我将回到之前的页面"
browser.forward()
time.sleep(5)
print "现在我将打开杨彦星的网站进行json搜索"
browser.get("http://static.yangyanxing.com")
browser.find_element_by_xpath(".//*[@id="ls"]").send_keys(u"json")
browser.find_element_by_xpath(".//*[@id="header"]/div[1]/div/form/input[2]").click()
time.sleep(5)
browser.quit()

browser = webdriver.Chrome()

print "以下将以登录人人网来进行上面的综合应用"
browser.get("http://www.renren.com/SysHome.do")
browser.find_element_by_id("email").clear()#这个是以id选择元素
browser.find_element_by_id("email").send_keys("email")
browser.find_element_by_id("email").send_keys(Keys.BACK_SPACE)
time.sleep(2)
browser.find_element_by_id("email").send_keys("m")
s(2)
browser.find_element_by_id("email").send_keys(Keys.CONTROL,"a")
s(2)
browser.find_element_by_id("email").send_keys(Keys.CONTROL,"x")#剪切掉里面的内容
s(2)
browser.find_element_by_id("email").send_keys(Keys.CONTROL,"v") #重新输入进去
s(2)
browser.find_element_by_name("password").clear()#这个是以name选择元素
browser.find_element_by_name("password").send_keys("password")
#browser.find_element_by_xpath(".//*[@id="login"]").click()#这个是以xpath选择元素
browser.find_element_by_xpath(".//*[@id="login"]").send_keys(Keys.ENTER) #这里通过点击Enter键来登录
browser.maximize_window()
article = browser.find_element_by_link_text(u"周碧华:社科院出现内鬼意味着什么?")
ActionChains(browser).move_to_element(article).perform()#将鼠标移动到这里,但是这里不好用
ActionChains(browser).context_click(article).perform()
time.sleep(5)

browser.quit()

# 店铺签到https://www.v2ex.com/t/321539
    def shop_check_in(self):
        urls = [
                "https://nongfutechan.taobao.com/ugo.htm?spm=a217e.7759359.15285.1.4xE9Il&signin=true#ugo-jinbi",
                "https://shop136560499.taobao.com/ugo.htm?spm=a217e.7759359.15285.2.muhVBy&signin=true#ugo-jinbi",
                "https://shop33473134.taobao.com/ugo.htm?spm=a217e.7759359.15285.3.yW2N4E&signin=true#ugo-jinbi"
                ]
        for url in urls:
            self.driver.get(url)
            time.sleep(5)
            print("page_source	%s" % self.driver.page_source)
            self.driver.find_element_by_xpath("//a[@href="#" and @class="now-take J_NowSignIn" and text()="立即签到"]").click()


增加 wait 时间,确保新页面已经完全加载
用 Google Chrome 的 XPath Helper 插件,确保自己写的 XPath selector 无误
打印源代码 driver.page_source ,确认页面内有「立即签到」这个元素,并且 XPath selector 无误

from http://www.yangyanxing.com/ar...

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/45526.html

相关文章

  • selenium-python中文版文档

    摘要:目前支持的版本有或以上。这份文档介绍了,但不包括。标准库中自带命令,而需要自己单独安装。驱动需要一个驱动器去与所选择的浏览器进行互交以火狐为例需要安装驱动以确保后面的命令可以正常运行。建议要在或更新版本的运行环境内运行服务器。 安装 1.1. 简介 Selenium Python提供了一个简单的绑定式API来使用Selenium WebDriver编写功能/验收测试。通过Seleniu...

    yacheng 评论0 收藏0
  • 以后再有人问你selenium是什么,你就把这篇文章给他

    摘要:不同目标的自动化测试有不同的测试工具,但是任何工具都无不例外的需要编程的过程,实现源代码,也可以称之为测试脚本。 写在最前面:目前自动化测试并不属于新鲜的事物,或者说自动化测试的各种方法论已经层出不穷,但是,能够在项目中持之以恒的实践自动化测试的团队,却依旧不是非常多。有的团队知道怎么做,做的还不够好;有的团队还正在探索和摸索怎么做,甚至还有一些多方面的技术上和非技术上的旧系统需要重构……...

    Keven 评论0 收藏0
  • Python2+Selenium入门02-第一个Selenium Python脚本

    摘要:注意如果上述脚本无法正常启动浏览器,需要先检查与浏览器的版本是否一致然后再检查浏览器对应的文件是否放在的安装目录下,如系统的默认安装路径,,如果没有请将该文件放在此目录下,然后再次运行脚本。 第一个自动化测试脚本 脚本如下所示: # _*_ coding:utf-8 _*_ from selenium import webdriver from selenium.webdriver....

    raise_yang 评论0 收藏0
  • Python3网络爬虫实战---1、请求库安装:Requests、Selenium、ChromeDr

    摘要:下一篇文章网络爬虫实战请求库安装爬虫可以简单分为几步抓取页面分析页面存储数据。相关链接官方网站官方文档中文文档安装验证安装进入命令行交互模式,导入一下包,如果没有报错,则证明安装成功。 下一篇文章:Python3网络爬虫实战---2、请求库安装:GeckoDriver、PhantomJS、Aiohttp 爬虫可以简单分为几步:抓取页面、分析页面、存储数据。 在第一步抓取页面的过程中,...

    wawor4827 评论0 收藏0
  • 基于Selenium + Pythonweb自动化框架

    摘要:一什么是是一个基于浏览器的自动化工具,她提供了一种跨平台跨浏览器的端到端的自动化解决方案。模块主要用来记录用例执行情况,以便于高效的调查用例失败信息以及追踪用例执行情况。测试用例仓库用例仓库主要用来组织自动化测试用例。 一、什么是Selenium? Selenium是一个基于浏览器的自动化工具,她提供了一种跨平台、跨浏览器的端到端的web自动化解决方案。Selenium主要包括三部分:...

    sunny5541 评论0 收藏0
  • Python3网络爬虫实战---37、动态渲染页面抓取:Selenium

    摘要:不过动态渲染的页面不止这一种。再有淘宝这种页面,它即使是获取的数据,但是其接口含有很多加密参数,我们难以直接找出其规律,也很难直接分析来抓取。我们用一个实例来感受一下在这里们依然是先打开知乎页面,然后获取提问按钮这个节点,再将其 上一篇文章:Python3网络爬虫实战---36、分析Ajax爬取今日头条街拍美图下一篇文章:Python3网络爬虫实战---38、动态渲染页面抓取:Spla...

    zhjx922 评论0 收藏0

发表评论

0条评论

Half

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<