在本文中,您将会了解到关于从网站请求完全用JavaScript呈现的html源,并找到所有iframe广告代码的新资讯,同时我们还将为您解释网页从请求到显示的过程的相关在本文中,我们将带你探索从网站请
在本文中,您将会了解到关于从网站请求完全用JavaScript呈现的html源,并找到所有iframe广告代码的新资讯,同时我们还将为您解释网页从请求到显示的过程的相关在本文中,我们将带你探索从网站请求完全用JavaScript呈现的html源,并找到所有iframe广告代码的奥秘,分析网页从请求到显示的过程的特点,并给出一些关于HTML iframe和javascript、html 隐藏广告代码,Javascript实现关闭广告实现删除广告的效果、iframe里使用JavaScript控制主页转向的方法_javascript技巧、javascript IFrame 强制刷新代码_javascript技巧的实用技巧。
本文目录一览:- 从网站请求完全用JavaScript呈现的html源,并找到所有iframe广告代码(网页从请求到显示的过程)
- HTML iframe和javascript
- html 隐藏广告代码,Javascript实现关闭广告实现删除广告的效果
- iframe里使用JavaScript控制主页转向的方法_javascript技巧
- javascript IFrame 强制刷新代码_javascript技巧
从网站请求完全用JavaScript呈现的html源,并找到所有iframe广告代码(网页从请求到显示的过程)
我目前正在尝试使用selenium和BeautifulSoup从网站检索所有iframe标签。问题是我没有得到所有的iframe,因为BS4不在网页中搜索内部的html文档,而且我不认为javascript在HTML内执行,因此可能有些HTML元素没有被渲染。是否有一个Web抓取工具,该工具可让我请求url,检索完全js呈现的HTML文件,然后搜索DOM并获取与iframe匹配的所有标签,即使在内部HTML代码中也是如此。
基本上,我能够在chrome inspector工具中看到我想要的所有标签,但它们未显示在从BS4中的find_all(’iframe’)函数检索的列表中。
这是我的代码:
from bs4 import BeautifulSoupimport requestsfrom selenium import webdriverbrowser = webdriver.Chrome(''C:/Users/G/chromedriver.exe'')browser.get("https://reddit.com")HTML = browser.page_sourceinnerHTML = browser.execute_script("return document.body.innerHTML")page = BeautifulSoup(innerHTML, ''html.parser'')for iframe in page.find_all(''iframe''): print(iframe)browser.close()
答案1
小编典典您可以使用以下代码块<iframe>
专门获取所有标签 Selenium
:
from selenium import webdriverbrowser = webdriver.Firefox(executable_path=r''C:\Utility\BrowserDrivers\geckodriver.exe'')browser.get("https://reddit.com")frames_tag = browser.find_elements_by_tag_name("iframe")frames_xpath = browser.find_elements_by_xpath("//iframe")frames_css = browser.find_elements_by_css_selector("iframe")print("Frames detected through iframe tag are %s" %frames_tag)print("Frames detected through xpath are %s" %frames_xpath)print("Frames detected through css are %s" %frames_css)browser.quit()
我的控制台上的输出是:
Frames detected through iframe tag are [<selenium.webdriver.firefox.webelement.FirefoxWebElement (session="98594106-54a6-4941-a6ab-cd9d92e9afa2", element="ead39d06-0e39-4b40-9425-a86a1fe88d4f")>, <selenium.webdriver.firefox.webelement.FirefoxWebElement (session="98594106-54a6-4941-a6ab-cd9d92e9afa2", element="1ce10f29-a620-4ce6-90e1-9da563046c70")>, <selenium.webdriver.firefox.webelement.FirefoxWebElement (session="98594106-54a6-4941-a6ab-cd9d92e9afa2", element="ba8493e4-8246-47a0-9ed4-3f51b8c0f133")>, <selenium.webdriver.firefox.webelement.FirefoxWebElement (session="98594106-54a6-4941-a6ab-cd9d92e9afa2", element="19c0f134-c243-47bd-96d1-6b06ff66a011")>, <selenium.webdriver.firefox.webelement.FirefoxWebElement (session="98594106-54a6-4941-a6ab-cd9d92e9afa2", element="95d78fa6-fb4f-4b7c-89c5-9b85965f0e4c")>, <selenium.webdriver.firefox.webelement.FirefoxWebElement (session="98594106-54a6-4941-a6ab-cd9d92e9afa2", element="e6d2d931-1f35-432f-8825-052e244fe798")>]Frames detected through xpath are [<selenium.webdriver.firefox.webelement.FirefoxWebElement (session="98594106-54a6-4941-a6ab-cd9d92e9afa2", element="ead39d06-0e39-4b40-9425-a86a1fe88d4f")>, <selenium.webdriver.firefox.webelement.FirefoxWebElement (session="98594106-54a6-4941-a6ab-cd9d92e9afa2", element="1ce10f29-a620-4ce6-90e1-9da563046c70")>, <selenium.webdriver.firefox.webelement.FirefoxWebElement (session="98594106-54a6-4941-a6ab-cd9d92e9afa2", element="ba8493e4-8246-47a0-9ed4-3f51b8c0f133")>, <selenium.webdriver.firefox.webelement.FirefoxWebElement (session="98594106-54a6-4941-a6ab-cd9d92e9afa2", element="19c0f134-c243-47bd-96d1-6b06ff66a011")>, <selenium.webdriver.firefox.webelement.FirefoxWebElement (session="98594106-54a6-4941-a6ab-cd9d92e9afa2", element="95d78fa6-fb4f-4b7c-89c5-9b85965f0e4c")>, <selenium.webdriver.firefox.webelement.FirefoxWebElement (session="98594106-54a6-4941-a6ab-cd9d92e9afa2", element="e6d2d931-1f35-432f-8825-052e244fe798")>]Frames detected through css are [<selenium.webdriver.firefox.webelement.FirefoxWebElement (session="98594106-54a6-4941-a6ab-cd9d92e9afa2", element="ead39d06-0e39-4b40-9425-a86a1fe88d4f")>, <selenium.webdriver.firefox.webelement.FirefoxWebElement (session="98594106-54a6-4941-a6ab-cd9d92e9afa2", element="1ce10f29-a620-4ce6-90e1-9da563046c70")>, <selenium.webdriver.firefox.webelement.FirefoxWebElement (session="98594106-54a6-4941-a6ab-cd9d92e9afa2", element="ba8493e4-8246-47a0-9ed4-3f51b8c0f133")>, <selenium.webdriver.firefox.webelement.FirefoxWebElement (session="98594106-54a6-4941-a6ab-cd9d92e9afa2", element="19c0f134-c243-47bd-96d1-6b06ff66a011")>, <selenium.webdriver.firefox.webelement.FirefoxWebElement (session="98594106-54a6-4941-a6ab-cd9d92e9afa2", element="95d78fa6-fb4f-4b7c-89c5-9b85965f0e4c")>, <selenium.webdriver.firefox.webelement.FirefoxWebElement (session="98594106-54a6-4941-a6ab-cd9d92e9afa2", element="e6d2d931-1f35-432f-8825-052e244fe798")>]
HTML iframe和javascript
解决方法
html 隐藏广告代码,Javascript实现关闭广告实现删除广告的效果
目录
1.先写基础的html样式
2.添加后面会用到的css样式
3.现在开始写script样式,我们先把需要获取到的元素获取到
4.然后通过js添加一些css样式
5.现在我们写点击事件
6.我们现在优化一下,再加一个点击事件
7.最终样式
1.先写基础的html样式
<!DOCTYPE html>
<html>
<head>
<Meta charset="utf-8">
<title></title>
</head>
<body>
<div id="div1">
<div>告诉你件事。我是广告</div>
<img src="./cha.png" alt="">
<button>点我有惊喜</button>
</div>
</body>
</html>
2.添加后面会用到的css样式
<!DOCTYPE html>
<html>
<head>
<Meta charset="utf-8">
<title></title>
<style>
.hover{
width: 300px;
height: 400px;
background-color: red;
}
#div1{
position: relative;
}
img{
position: absolute;
top: 10px;
left: 260px;
}
</style>
</head>
<body>
<div id="div1">
<div>告诉你件事。我是广告</div>
<img src="./cha.png" alt="">
<button>点我有惊喜</button>
</div>
</body>
</html>
3.现在开始写script样式,我们先把需要获取到的元素获取到
<script>
var sex1 = document.querySelector('#div1 div')
// console.log(sex1)
var imgs = document.querySelector('img')
var btn = document.querySelector('button')
</script>
4.然后通过js添加一些css样式
<script>
var sex1 = document.querySelector('#div1 div')
// console.log(sex1)
var imgs = document.querySelector('img')
var btn = document.querySelector('button')
sex1.className = 'hover'
sex1.style.textAlign = 'center';
sex1.style.lineHeight = '400px'
btn.style.display = 'none';
</script>
5.现在我们写点击事件
<script>
var sex1 = document.querySelector('#div1 div')
// console.log(sex1)
var imgs = document.querySelector('img')
var btn = document.querySelector('button')
sex1.className = 'hover'
sex1.style.textAlign = 'center';
sex1.style.lineHeight = '400px'
btn.style.display = 'none';
// console.log(sex1)
imgs.onclick = function(){
sex1.style.display = 'none';
this.style.display = 'none';
alert('拜了个拜');
btn.style.display = 'block';
}
</script>
这里通过点击事件将sex1.style.display = 'none';和this.style.display = 'none';属性设置好
6.我们现在优化一下,再加一个点击事件
<script>
var sex1 = document.querySelector('#div1 div')
// console.log(sex1)
var imgs = document.querySelector('img')
var btn = document.querySelector('button')
sex1.className = 'hover'
sex1.style.textAlign = 'center';
sex1.style.lineHeight = '400px'
btn.style.display = 'none';
// console.log(sex1)
imgs.onclick = function(){
sex1.style.display = 'none';
this.style.display = 'none';
alert('拜了个拜');
btn.style.display = 'block';
}
btn.onclick = function(){
sex1.style.display = 'block';
imgs.style.display = 'block';
btn.style.display = 'none';
alert('我又回来了');
}
</script>
7.最终样式
<!DOCTYPE html>
<html>
<head>
<Meta charset="utf-8">
<title></title>
<style>
.hover{
width: 300px;
height: 400px;
background-color: red;
}
#div1{
position: relative;
}
img{
position: absolute;
top: 10px;
left: 260px;
}
</style>
</head>
<body>
<div id="div1">
<div>告诉你件事。我是广告</div>
<img src="./cha.png" alt="">
<button>点我有惊喜</button>
</div>
<script>
var sex1 = document.querySelector('#div1 div')
// console.log(sex1)
var imgs = document.querySelector('img')
var btn = document.querySelector('button')
sex1.className = 'hover'
sex1.style.textAlign = 'center';
sex1.style.lineHeight = '400px'
btn.style.display = 'none';
// console.log(sex1)
imgs.onclick = function(){
sex1.style.display = 'none';
this.style.display = 'none';
alert('拜了个拜');
btn.style.display = 'block';
}
btn.onclick = function(){
sex1.style.display = 'block';
imgs.style.display = 'block';
btn.style.display = 'none';
alert('我又回来了');
}
</script>
</body>
</html>
iframe里使用JavaScript控制主页转向的方法_javascript技巧
本文实例讲述了iframe里使用javascript控制主页转向的方法。分享给大家供大家参考。具体分析如下:
下面的JS代码写在iframe里面,点击按钮后整个网页会转向指定的url,而不是只转iframe里的页面
<!DOCTYPE html> <html> <head> <script> function breakout() { if (window.top!=window.self) { window.top.location="tryjs_breakout.htm"; } } </script> </head> <body> <input type="button" onclick="breakout()" value="Break out of frame!"> </body> </html>
希望本文所述对大家的javascript程序设计有所帮助。
javascript IFrame 强制刷新代码_javascript技巧
当第一次从主窗口进入到一个iframe简称{A}中,此时这个{A}中呈现的数据是新的,这时我又点了另外的一个iframe简称{B},这里{B}的数据也是新的,在{B}中进行一些逻辑处理,如向{A}中批量增加模型数据,这里我们再进入到{A}中会发现数据是被缓存着的。因为是从{B}中对批量操作了{A}的数据,{B}是与server通信的,也就是会进行逻辑层/持久层操作,这样server端更新的呈现部分是{B}而不是全部,这也就是局部刷新,只刷{B}。而我们需要做的是让{A}中的内容也跟着变。
解决方案:
·很明显iframe.window.location.reload();不符合当前需求。
·使用window.setTimeout(iframe.window.loadction.reload(),1000);这种方式会造成多次刷新,如果还要在{A}中对{B}的数据进行更新呢?
·研究了半天,其实可以直接从iframe cache问题入手来解决,很easy,直接不让它缓存不就完了,不缓存了,当然也就用不着刷新了。
示例:
function doInsert2BatchCallBack() {
var pIf = parent.document.getElementById(''IFRAME_A'');
pIf.src = pIf.src + "&".concat(Math.random());
//提交批量导入请求
}
今天关于从网站请求完全用JavaScript呈现的html源,并找到所有iframe广告代码和网页从请求到显示的过程的介绍到此结束,谢谢您的阅读,有关HTML iframe和javascript、html 隐藏广告代码,Javascript实现关闭广告实现删除广告的效果、iframe里使用JavaScript控制主页转向的方法_javascript技巧、javascript IFrame 强制刷新代码_javascript技巧等更多相关知识的信息可以在本站进行查询。
本文标签: