爬虫的浏览器伪装技术(高度伪装)

 1 import urllib.request
 2 import http.cookiejar
 3
 4 url = "http://www.baidu.com"
 5 file_path = "E:/workspace/PyCharm/codeSpace/books/python_web_crawler_book/chapter6/demo5/1.html"
 6
 7 # 添加报头 注意"Accept-Encoding": "gb2312, utf-8" 防止解码而出现乱码
 8 headers = {"Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8","Accept-Encoding": "gb2312, utf-8","Accept-Language": "zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3","User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Firefox/52.0",    "Connection": "keep-alive","Host": "baidu.com"
 9 }
10 cjar = http.cookiejar.CookieJar()
11 opener = urllib.request.build_opener(urllib.request.HTTPCookieProcessor(cjar))
12 headall = []
13 for key,value in headers.items():
14     item = (key,value)
15     headall.append(item)
16 opener.addheaders = headall
17 urllib.request.install_opener(opener)
18 print(urllib.request.urlopen(url).read().decode(‘utf-8‘))
时间: 2024-11-10 01:10:06

爬虫的浏览器伪装技术(高度伪装)的相关文章

20145326蔡馨熤《网络对抗》——恶意代码伪装技术实践

20145326蔡馨熤<网络对抗>--恶意代码伪装技术实践 一.木马化正常软件 基于之前的后门程序,做一些修改.再将修改后的程序的名字改成一个正常软件的名字,蒙蔽用户的眼睛.哈哈哈,瞬间觉得自己好阴险.因为之前安装过Systracer这个工具,这次就把后门程序的名字改为"Systracer安装程序". 然后双击运行"Systracer安装程序.exe".并且成功回连到Kali. 但是有个不足之处,就是程序运行后,会弹出一个类似命令行的"黑框&q

修改浏览器的User-Agent来伪装你的浏览器和操作系统

近期很多文章都提到了User-Agent (UA) 字符串,但大部分网友都不知道这个东西有什么用处.其实简单的说User-Agent就是客户端浏览器等应用程序使用的一种特殊的网络协议,在每次浏览器(邮件客户端/搜索引擎蜘蛛)进行 HTTP 请求时发送到服务器,服务器就知道了用户是使用什么浏览器(邮件客户端/搜索引擎蜘蛛)来访问的.既然是人为规定的协议,那么就是说不管什么浏览器,默认的UA都是可以更改的.有时候为了达到一些不可告人的目的,我就经常需要更改一下UA的设置,比如伪装一下浏览器类型,比如

基于浏览器BHO技术网页内容过滤系统

今天帮朋友做了一个简单的网页内容过滤系统,该系统实现对页面中非法内容的监控,当遇到有非法内容时,不再显示原页面,而是提示用户试图访问的页面存在非法内容. 说到网页内容过滤,马上想到了Socket API监控,但尝试之后放弃了,因为要更改浏览器中的输出,还是比较麻烦的. 再就是使用浏览器劫持技术,也就是BHO(Browser Helper Object,浏览器辅助对象,http://baike.baidu.com/view/362533.htm). 我最终选择使用了这种方法,主要参考了如下4篇文章

兼容IE6浏览器的最大高度和最小高度css代码

兼容IE6浏览器的最大高度和最小高度css代码:IE6浏览器是不支持最大高度和最小高度属性的,下面就通过兼容性措施实现此功能.一.最大高度效果: .max_height{ max-height:400px; _height:expression(this.scrollHeight > 400 ? "400px" : "auto"); } 二.最小高度效果: .min_height{ min-height:200px; _height:expression(th

浏览器端技术体系概览 -- 前端开发的七种武器

科普文一则,说说我对前端技术体系(也称浏览器端技术体系)的认识,希望能让更多人了解前端,也希望能借此丰富前端开发的大局观. 去年我写了网站性能优化系列文章,看过的朋友会知道,这类文章重点并非介绍各种具体的优化技巧,而是在关注发掘这些优化点的思路和方法.然后介绍给大家多种检测手段去发现问题,进而有目标的解决问题.所有这些需要我们对有网页整个生命周期有清晰的认识,对网页中各种技术极其相互结合的方式有明确的认知.这就回归到一个更本质的问题:浏览器端技术体系是怎样的. 想用三言两语说清前端技术不大可能,

浏览器窗口的高度和宽度

浏览器窗口的高度和宽度: var w=window.innerWidth|| document.documentElement.clientWidth|| document.body.clientWidth; //获取页面宽度 var h=window.innerHeight|| document.documentElement.clientHeight|| document.body.clientHeight; //获取页面高度

Atitit.java的浏览器插件技术 Applet japplet attilax总结

Atitit.java的浏览器插件技术  Applet  japplet attilax总结 1. Applet类及各个方法说明 1 2. JApplet类示例 2 3. / 用main方法运行JApplet   2 4. 设置获取参数 2 5. Firefox运行applet提示安全组织的解决 3 6. Japplet调用js 4 7. 调试的清除缓存 4 8. Class文件的位置 -推荐放在webroot下面 5 9. 参考 5 1. Applet类及各个方法说明 Applet类提供一个基

js 获取浏览器宽度和高度

有三种方法能够确定浏览器窗口的尺寸(浏览器的视口,不包括工具栏和滚动条 ). 对于Internet Explorer.Chrome.Firefox.Opera 以及 Safari: window.innerHeight - 浏览器窗口的内部高度 window.innerWidth - 浏览器窗口的内部宽度 对于 Internet Explorer 8.7.6.5: document.documentElement.clientHeight document.documentElement.cli

兼容各个浏览器的未知高度div垂直居中效果

兼容各个浏览器的未知高度div垂直居中效果:让div垂直居中与它的父对象中,并不像是让div在父元素中水平居中那么简单,只要简单的为此元素设置margin:0px auto即可,虽然将一些属性配合使用也可以将div垂直居中与父元素中,但是在某些浏览器中并不兼容,下面就介绍一种兼容各大浏览器的方式.先看一段代码实例: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta

js获取窗口滚动条高度、窗口可视范围高度、文档实际内容高度、滚动条离浏览器底部的高度

1.获取窗口可视范围的高度 1 //获取窗口可视范围的高度 2 function getClientHeight(){ 3 var clientHeight=0; 4 if(document.body.clientHeight&&document.documentElement.clientHeight){ 5 var clientHeight=(document.body.clientHeight<document.documentElement.clientHeight)?doc