网站模拟登录 动态页面模拟点击 执行JavaScript语句

news/2024/5/3 15:47:29/文章来源:https://blog.csdn.net/weixin_33694620/article/details/88918427

网站模拟登录

douban.py

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import timedriver = webdriver.PhantomJS()
driver.get("http://www.douban.com")

输入账号密码

driver.find_element_by_name("form_email").send_keys("xxxxx@xxxx.com")
driver.find_element_by_name("form_password").send_keys("xxxxxxxx")

模拟点击登录

driver.find_element_by_xpath("//input[@class='bn-submit']").click()

等待3秒

time.sleep(3)

生成登陆后快照

driver.save_screenshot("douban.png")with open("douban.html", "w") as file:file.write(driver.page_source)driver.quit()

动态页面模拟点击

#!/usr/bin/env python
# -*- coding:utf-8 -*-# python的测试模块import unittest
from selenium import webdriver
from bs4 import BeautifulSoupclass douyuSelenium(unittest.TestCase):# 初始化方法def setUp(self):self.driver = webdriver.PhantomJS()#具体的测试用例方法,一定要以test开头def testDouyu(self):self.driver.get('http://www.douyu.com/directory/all')while True:# 指定xml解析soup = BeautifulSoup(driver.page_source, 'xml')# 返回当前页面所有房间标题列表 和 观众人数列表titles = soup.find_all('h3', {'class': 'ellipsis'})nums = soup.find_all('span', {'class': 'dy-num fr'})# 使用zip()函数来可以把列表合并,并创建一个元组对的列表[(1,2), (3,4)]for title, num in zip(nums, titles):print u"观众人数:" + num.get_text().strip(), u"\t房间标题: " + title.get_text().strip()# page_source.find()未找到内容则返回-1if driver.page_source.find('shark-pager-disable-next') != -1:break# 模拟下一页点击self.driver.find_element_by_class_name('shark-pager-next').click()# 退出时的清理方法def tearDown(self):print '加载完成...'self.driver.quit()if __name__ == "__main__":unittest.main()

执行 JavaScript 语句

隐藏百度图片

from selenium import webdriverdriver = webdriver.PhantomJS()
driver.get("https://www.baidu.com/")

给搜索输入框标红的javascript脚本

js = "var q=document.getElementById(\"kw\");q.style.border=\"2px solid red\";"

调用给搜索输入框标红js脚本

driver.execute_script(js)

查看页面快照

driver.save_screenshot("redbaidu.png")

js隐藏元素,将获取的图片元素隐藏

img = driver.find_element_by_xpath("//*[@id='lg']/img")
driver.execute_script('$(arguments[0]).fadeOut()',img)

向下滚动到页面底部

driver.execute_script("$('.scroll_top').click(function(){$('html,body').animate({scrollTop: '0px'}, 800);});")

查看页面快照

driver.save_screenshot("nullbaidu.png")driver.quit()

模拟滚动条滚动到底部

from selenium import webdriver
import timedriver = webdriver.PhantomJS()
driver.get("https://movie.douban.com/typerank?type_name=剧情&type=11&interval_id=100:90&action=")

向下滚动10000像素

js = "document.body.scrollTop=10000"
#js="var q=document.documentElement.scrollTop=10000"
time.sleep(3)

查看页面快照

driver.save_screenshot("douban.png")

执行JS语句

driver.execute_script(js)
time.sleep(10)

查看页面快照

driver.save_screenshot("newdouban.png")driver.quit()

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_735234.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【原创】网站抓包HttpWebRequest不返回Javascript生成的Cookie的解决办法

前言: 最近在做中国移动爬虫的过程中,首先遇到的就是 在某个请求中,有一个名为“WT_PFC"的cookie键值是由前端JavaScript生成的,没有进入到HttpWebResponse中。事实上,C#不会去执行客户端脚本 ,用到的…

深入浅出Symfony2 - 如何提高网站响应速度 [转]

简介 Symfony2是一个基于PHP语言的Web开发框架,有着开发速度快、性能高等特点。但Symfony2的学习曲线也比较陡峭,没有经验的初学者往往需要一些练习才能掌握其特性。相对其他框架,Symfony2比较吸引人的特点有: 支持DI(…

keepalived+nginx+apache+mysql实现高可用、负载均衡的网站(下篇)

一环境介绍 主机名ip安装软件nginx_mysql_m192.168.255.67keepalivednginxnginx_mysql_s192.168.255.66keepalivednginxmysql1192.168.255.52mysql、mysql-servermysql2192.168.255.57mysql、mysql-server二、keepalived配置keepalived的配置和上一篇的类似 vim /etc/keepalive…

个人网站发布分享

1、购买域名之前先去工信部网站查看想要购买的域名后缀能否备案  PS:域名绑定国外服务器或主机不需要备案,国内需要到工信部备案 (传送门:http://www.miitbeian.gov.cn/publish/query/indexFirst.action) 进入之后在下图域名类型名称中 输入想要购买的后缀&#x…

第10章 使用Apache服务部署静态网站

httpd服务程序的主要配置文件及存放位置如表10-1所示在httpd服务程序主配置文件中,最为常用的参数如表10-2所示DocumentRoot参数用于定义网站数据的保存路径,其参数的默认值是把网站数据存放到/var/www/html目录中;而当前网站普遍的首页面名称…

大型网站技术架构(一)大型网站架构演化

2019独角兽企业重金招聘Python工程师标准>>> 看完了有一本书,就应该有所收获,有所总结,最近把《大型网站技术架构》一书给看完了,给人的印象实在深刻,再加上之前也搞过书本上讲的反向代理和负载均衡以及ses…

网站性能测试基本概念

注:引用李智慧教授的架构核心原理书籍;若有不足地方欢迎指出 一 系统性能测试的指标 1:响应时间 及一个操作到返回的时间;包括从发出请求开始到收到最后响应数据所需要的时间;这个指标直接放映了系统的反应的快慢。 …

视频网站的视频下载

影响情绪啊,现在很多的视频网站的视频都不提供下载功能,没关系,我们可以自己动手嘛!这里以6rooms播客网站([url]http://www.6rooms.com/[/url])为例,其他网站如:Toodou、Mofile等获得…

网站性能越来越差怎么办?

新的一年,你的老板或客户,是否曾和你抱怨公司的网站性能愈来愈差?网站大家都会写,自从有了 Visual Studio 之后,连你家楼下的正妹小喵和隔壁的王大婶都会写 ASP.NET。但同样的一个画面,背后的性能却可能是天…

[已上传流程图]在线服务器状态监控预警软件推荐:网站保姆

维护的网站或服务器过多,没有心思守猪待兔般的检查服务是否正常运行?服务器经常宕机,发现却总不及时,导致服务长时间停止?面对这些问题你是如何解决的?曾经,为了解决这些问题,我自己…

SEO优化 SEO基础

SEO 基础概述SEMSEO站内 SEO 优化内部链接优化网站结构优化内容优化URL 规则优化关键词部署TDK 优化站外 SEO 优化分类目录社会媒体购买高价值链接链接交换论坛链接高质量内容搜索引擎是什么搜索引擎的重要性基于地理位置的重新优化搜索引擎算法机制抓取站内入口站外链接网站权…

SEO优化 网站结构优化

网站结构优化网站的结构物理结构扁平物理结构树形物理结构逻辑结构扁平逻辑结构树形逻辑结构网站结构对 SEO 的影响网站结构优化网站的结构 网站结构是指在网站中页面与页面之间的层次关系, 按性质分为逻辑结构和物理结构. 合理的网站结构能正确表达网站的基本内容及内容之间…

SEO优化 关键词部署策略

关键词部署策略概述关键词的类型导航查询信息查询交易查询长尾理论关键词挖掘关键词挖掘工具关键词规划师百度指数百度搜索下拉框批量对关键词进行筛选搭建网站的关键词库关键词部署策略金字塔形关键词分布关键词策略定制总结概述 关键词就是用户输入搜索框中的文字, 也就是用…

《玩赚你的网站》即《玩转你的网站》

通 知 近期华章公司出版的一本畅销图书《玩赚你的网站》 ,有很多会员反应在网上搜不到。我们核查了原因,原来大家在搜索时使用了《玩转你的网站》! 图书上此“赚”非彼“转”,不过只要网站转了,就一定会赚&#xff0…

构建高安全电子商务网站之(网站文件及数据库自动本地/异地双备份)[连载之电子商务系统架构]...

构建高安全电子商务网站之(网站文件及数据库自动本地/异地双备份)[连载之电子商务系统架构]出处:http://jimmyli.blog.51cto.com/我站在巨人肩膀上Jimmy Li 作者:Jimmy Li 关键词:网站,电子商务,Shell,自动备份,异地备份 ------[连载之电子商…

对象网站中全局信息的抽象(Web.Config)

几个常用的全局常量 调用Web.config节点的方法 转载于:https://www.cnblogs.com/lori/archive/2011/12/11/2283673.html

截取指定网站Html编码

方法一: string url_s "http://www.baidu.com/ "; WebRequest request_o WebRequest.Create(url_s); HttpWebResponse response_o (HttpWebResponse)request_o.GetResponse(); Stream html_o response_o.GetResponseStream(); …

分享27个最新国外超酷单页面网站设计

日期:2012-5-6 来源:GBin1.com 越来越多的网站开始使用单页面的网站设计,因为单页面网站设计简单直观,可以使用夸张的字体和超酷的插图展示,正是这些原因使得单页面设计在2012年赢得了更多开发人员的青睐。而且使用最…

去哪网项目开发(5)--网站首页开发

1.安装依赖CSS库 npm install stylus --save npm install stylus-loader --save 2. 像素转换小技巧 rem的大小是相对于HTML这个根元素的大小的,因此如果我们把HTML元素的大小设置成50px;那么1rem 50px。假设我有一个高度为86px设计,但是设…

【求助】为升级gooogleman嵌入式联盟网站www.gooogleman.com做准备

作者:gooogleman 1、因为UCenter的应用程序 不慎被我删除,现在我不懂如何恢复的,自己尝试安装也总是有问题。不懂为啥原因,哎,门外汉啊,真不懂怎么搞的。 现在看了很多视频教程。 Ucenter后台“应用管理”的…