家在上网的时候是否曾经遇到过网页文字无法复制的情况呢?为什么网页文字无法复制呢?或者问如何把不能复制的网页文字复制下来呢?其实,网页文字不能复制原因大部分是网页的制作者为了防止网页内容被被人盗用而设置了复制限制,在网页中嵌入了Javascript语言,通过编程的手段屏蔽了复制功能。下面小编给大家分享下如何把被限制复制的网页文字复制下来。
本方法以IE浏览器为例子,打开IE浏览器链接到需要访问的网页中。
点击IE浏览器的“工具”—“Internet选项”菜单,切换到“安全”标签页,选择“自定义级”,将所有脚本全部禁用。如下图操作:
1、在IE浏览器中找到Internet选项
2、选择自定义级别
3、禁用所有脚本语言
回到原来的网页,按快捷键F5刷新网页,此时就可以直接将网页的文字复制下来了。
当然完成网页文字复制后,一定要给原来被禁用的脚本“解禁”,否则在浏览其他网页时会出现错误,无法运行部分脚本效果。
想要学习更多电脑知识,欢迎关注微信公众号vbs_edit(VBS脚本之家),很炫酷哦!
分享成果,随喜正能量】为什么会觉得委屈?因为你只记住了自己的好,还记住了别人的不好。凡事,把对方摆在和你一样的位置,只会让彼此的心灵越来越远,何不多一些宽容,让一些琐碎和怨恨远离我们,让我们的心胸更加开阔。。
《VBA信息获取与处理》教程是我推出第六套教程,目前已经是第一版修订了。这套教程定位于最高级,是学完初级,中级后的教程。这部教程给大家讲解的内容有:跨应用程序信息获得、随机信息的利用、电子邮件的发送、VBA互联网数据抓取、VBA延时操作,剪贴板应用、Split函数扩展、工作表信息与其他应用交互,FSO对象的利用、工作表及文件夹信息的获取、图形信息的获取以及定制工作表信息函数等等内容。程序文件通过32位和64位两种OFFICE系统测试。是非常抽象的,更具研究的价值。
教程共两册,八十四讲。今日的内容是专题九“利用IE抓取网络数据”:VBA抓取解禁股票信息
大家好,这讲讲解的是利用IE,抓取东方财富网解禁股票的数据,利用的方法和上一讲基本类似,目的仍是给大家展示一下VBA中抓取数据的实例,给大家多介绍一种实用的场景,供大家选择利用。
实用场景:我不是太清楚解禁股的概念,但很多玩股票的朋友都有关注,经常要看每天股票解禁的股票数据,以便等到某种信息,要求利用IE实现提取某网站股票的解禁股信息,将这些数据放到工作表中以备选查看。选择的网址是:http://data.eastmoney.com/dxf/default.html 即东方财富网的数据。
为了实现上述的场景,我们先看一看上述提供网址提供网页的信息:
上述的网页中,我要提取的是红色框框起来表的数据,我们进行一下思路的分析:首先要建立一个IE对象,然后将网页文档提取出来,在网页文档上提取第三个表的数据即可。提取表数据的时候可以模拟真正工作表的行列循环,依次提取数据,在我之前的讲解中提到Rows.Length是指网页表格的个数,Cells(j).innertext是指单元格的内容。这两点在写代码的时候要注意。
另外,在抓取网页文档的表时我们这讲采用all.tags("table")(3)的方法,这种方法在之前的讲解中讲过是非常模糊但非常好用的一种数据查找的方案。all.tags(“标签名称”):返回该类标签的元素集合。这里选择序号(3)是指序号为3的表的数据。对于innertext的概念,大家要注意理解innerText 是指标签之间的纯文本信息。
在实现提取数据后,将内存释放,这是我建议的方案。
为了实现上述的思路,我给出了下面的代码:
Sub myNZB() '利用IE,抓取解禁股票数据
Dim IE, dmt, tb, i&, j&
Set IE=CreateObject("InternetExplorer.Application") '创建一个IE对象
Sheets("SHEET3").Select
Cells.ClearComments
With IE
.Visible=True '显示它
.navigate "http://data.eastmoney.com/dxf/default.html" '加载某个页面
Do Until .readystate=4 '等待页面加载完毕
DoEvents
Loop
Set dmt=.document '将IE浏览器加载的页面文档,赋予dmt变量
Set tb=dmt.all.tags("table")(3) '通过索引号捕捉表格对象
For i=0 To tb.Rows.Length - 1 '历遍其每个行
For j=0 To tb.Rows(i).Cells.Length - 1 '历遍每行的每个单元格
Cells(i + 1, j + 1)=tb.Rows(i).Cells(j).innertext '将其innertext写入单元格
Next
Next
End With
Set IE=Nothing
Set dmt=Nothing
Set tb=Nothing
MsgBox ("ok")
End Sub
代码的讲解:
1)Set IE=CreateObject("InternetExplorer.Application") 建立IE 的引用。
2).Visible=True '显示它
.navigate "http://data.eastmoney.com/dxf/default.html" '加载某个页面
Do Until .readystate=4 '等待页面加载完毕
DoEvents
Loop
上述代码令浏览器可见,加载网址http://data.eastmoney.com/dxf/default.html, 一直到加载完成,其中的DoEvents 是避免软死机的现象出现。
3) Set dmt=.document '将IE浏览器加载的页面文档,赋予dmt变量
4) Set tb=dmt.all.tags("table")(3) '通过索引号捕捉表格对象
5)For i=0 To tb.Rows.Length - 1 '历遍其每个行
For j=0 To tb.Rows(i).Cells.Length - 1 '历遍每行的每个单元格
Cells(i + 1, j + 1)=tb.Rows(i).Cells(j).innertext '将其innertext写入单元格
Next
Next
提取表格的数据到工作表。
6) Set IE=Nothing
Set dmt=Nothing
Set tb=Nothing
回收内存。对于回收内存的操作,建议大家利用.在数据库、字典、查找等等案例中都有类似的操作。
代码截图:
通过上述的代码,就可以完成我们的思路。
当我们点击运行按钮,如图的箭头所示,程序就会开始运行,抓取网页数据到工作表中。当然在实际的应用中,用户可以根据自己的实际需要完成抓取工作到指定的位置。
从而验证了我们思路的正确。
本节知识点回向:如何在页面文档中提取指定表的数据?
本节内容参考:009工作表.xlsm
我20多年的VBA实践经验,全部浓缩在下面的各个教程中,教程学习顺序:
【分享成果,随喜正能量】人生起起落落是常态,谁都会遇到不尽人意的时候,坦然接受所有的不幸,不颓废、不放弃、不抱怨,生活的转机就在前方。。
时候我们的在浏览器搜索一些文章来了解一些,看到些的特么好的文章想要复制下来收藏,却发现我们复制不了,其实这是一些网站页面的加密设置,先要单纯的点击页面来复制是不可能的,那么我们遇到网页文字无法复制粘贴怎么办呢。
今天就教你解决网页文字无法复制粘贴的办法,帮助到大家更好的利用。
从浏览器的相关功能下手
如果你使用的是IE浏览器的话,我们可以更改其相关设置,屏蔽掉网站的某些功能就能达到目的了。
安全设置帮你忙:启动IE→点击菜单“工具”中“Internet选项”→点“安全”→自定义级别→选择“安全级-高”→确定→按F5“刷新”;这时就可复制网页的相关内容了,原因很简单,安全级别最高的时候,一切控件和脚本均不能运行,再厉害的网页限制手段统统全部作废;
1、禁用网页脚本:将Internet的所有“脚本”都改为“禁用”,当复制到自己需要的内容后,再给网页脚本解禁,这样不会影响到我们浏览其他网页;
2、利用浏览器的编辑功能:只要在浏览器的工具栏点击“编辑工具”,就可以使用关联的文本编辑工具将网页内容复制其中,随后进行相关的编辑操作。
使用外部编辑功能
如果觉得把浏览器的设置改来改去太麻烦的话,也可以使用一些常见的软件帮我们去“曲线救国”。
Word直开:打开Word→单击工具栏的“打开”,这时在弹出的窗口内输入想要复制内容的连接,并选择“信任来源”,之后Word会自动打开网页,选择想要复制的内容进行操作即可。
去掉屏蔽代码:只要将该网页另存到电脑中,打开网页→点击“文件”菜单里的“另存为”→在“保存类型”中选择“全部(*htm;*.html)”→保存后,用记事本打开你保存的网页→找到body onselectstart="returnfalse";onpaste="return false" …删除后保存,再用浏览器打开刚保存的文件,也就打开了可复制粘贴的网页了。
以上几种复制不可复制网页的方法学会了吗?但还是需要说明的是:不要将好的技巧用在违规的事情,尤其是版权问题上。
*请认真填写需求信息,我们会在24小时内与您取得联系。