python网页抓取功能非常强大,使用urllib或者urllib2可以很轻松的抓取网页内容。但是很多时候我们要注意,可能很多网站都设置了防采集功能,不是那么轻松就能抓取到想要的内容。

今天我来分享下载python2和python3中都是如何来模拟浏览器来跳过屏蔽进行抓取的。

最基础的抓取:

#! /usr/bin/env python

# -*- coding=utf-8 -*-

# @Author pythontab

import urllib.request

url = "http://www.***.com"

html = urllib.request.urlopen(url).read()

print(html)

但是...有些网站不能抓取,进行了防采集设置,所以我们要变换一下方法

python2中(最新稳定版本python2.7)

#! /usr/bin/env python

# -*- coding=utf-8 -*-

# @Author pythontab.com

import urllib2

url="http://pythontab.com"

req_header = {'User-Agent':'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.64 Safari/537.11',

'Accept':'text/html;q=0.9,*/*;q=0.8',

'Accept-Charset':'ISO-8859-1,utf-8;q=0.7,*;q=0.3',

'Accept-Encoding':'gzip',

'Connection':'close',

'Referer':None #注意如果依然不能抓取的话,这里可以设置抓取网站的host

}

req_timeout = 5

req = urllib2.Request(url,None,req_header)

resp = urllib2.urlopen(req,None,req_timeout)

html = resp.read()

print(html)

python3中(最新稳定版本

#! /usr/bin/env python

# -*- coding=utf-8 -*-

# @Author pythontab

import urllib.request

url = "http://www.***.com"

headers = {'User-Agent':'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.64 Safari/537.11',

'Accept':'text/html;q=0.9,*/*;q=0.8',

'Accept-Charset':'ISO-8859-1,utf-8;q=0.7,*;q=0.3',

'Accept-Encoding':'gzip',

'Connection':'close',

'Referer':None #注意如果依然不能抓取的话,这里可以设置抓取网站的host

}

opener = urllib.request.build_opener()

opener.addheaders = [headers]

data = opener.open(url).read()

print(data)

#! /usr/bin/env python

# -*- coding:utf-8 -*-

# @Author pythonwc

import urllib2

url="http://www.baidu.com"

def getPage(html):

req_header = {'User-Agent':'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.64 Safari/537.11',

'Accept':'text/html;q=0.9,*/*;q=0.8',

'Accept-Charset':'ISO-8859-1,utf-8;q=0.7,*;q=0.3',

'Accept-Encoding':'gzip',

'Connection':'close',

'Referer':None #注意如果依然不能抓取的话,这里可以设置抓取网站的host

}

req_timeout = 5

req = urllib2.Request(url,None,req_header)

resp = urllib2.urlopen(req,None,req_timeout)

html = resp.read()

print(html)

python伪装浏览器什么意思_用python2和python3伪装浏览器爬取网页相关推荐

  1. python 第一行 报错_初学Python-只需4步,爬取网站图片

    很多人学习Python很重要的一个原因是,可以很简单的把一个网站的数据爬下来. 尤其是做我们这一行,产品经理,电商行业. 领导:弄一个买卖游戏周边商品的交易APP出来.我:行,那我们卖什么呀?领导:看 ...

  2. python微信公众号爬虫_微信公众号推送信息爬取---python爬虫

    问题描述 利用搜狗的微信搜索抓取指定公众号的最新一条推送,并保存相应的网页至本地. 注意点 搜狗微信获取的地址为临时链接,具有时效性. 公众号为动态网页(JavaScript渲染),使用request ...

  3. python伪装浏览器爬取网页图片_【IT专家】python 分别用python2和python3伪装浏览器爬取网页内容...

    本文由我司收集整编,推荐下载,如有疑问,请与我司联系 python 分别用 python2 和 python3 伪装浏览器爬取网页内容 2017/07/06 1 python 网页抓取功能非常强大,使 ...

  4. python爬虫爬网站数据登录_使用webdriver+urllib爬取网页数据(模拟登陆,过验证码)...

    urilib是python的标准库,当我们使用Python爬取网页数据时,往往用的是urllib模块,通过调用urllib模块的urlopen(url)方法返回网页对象,并使用read()方法获得ur ...

  5. python怎么查看网页编码格式_怎么用python爬取网页文字?

    用Python进行爬取网页文字的代码:#!/usr/bin/python# -*- coding: UTF-8 -*-import requestsimport re# 下载一个网页url = 'ht ...

  6. python爬取公交车站数据_Python爬虫实例_城市公交网络站点数据的爬取方法

    爬取的站点:http://beijing.8684.cn/ (1)环境配置,直接上代码: # -*- coding: utf-8 -*- import requests ##导入requests fr ...

  7. python爬虫公众号_python爬虫_微信公众号推送信息爬取的实例

    问题描述 利用搜狗的微信搜索抓取指定公众号的最新一条推送,并保存相应的网页至本地. 注意点 搜狗微信获取的地址为临时链接,具有时效性. 公众号为动态网页(JavaScript渲染),使用request ...

  8. python爬取网站教学视频_零基础Python爬取网页文章和图片详细教学(内附源码、教学视频)...

    Python爬虫,这个我相信对于很多人来说都不陌生! 今天小编给大家提供一份零基础Python爬取网页图片以及小说的代码并且详细的和大家讲解一下! 开发环境:版本Python3.6.2!(2版本会在2 ...

  9. python微信爬取教程_python爬虫_微信公众号推送信息爬取的实例

    问题描述 利用搜狗的微信搜索抓取指定公众号的最新一条推送,并保存相应的网页至本地. 注意点 搜狗微信获取的地址为临时链接,具有时效性. 公众号为动态网页(JavaScript渲染),使用request ...

最新文章

  1. java读取txt文件中的内容
  2. 会议报名丨CSSNLP 2020 第一届中国自然语言处理学生研讨会开放注册
  3. SAP如何批量设置采购信息记录删除标记
  4. hilbert变换_希尔伯特变换 matlab实现
  5. docker 容器启动顺序_Docker容器启动时初始化Mysql数据库
  6. leetcode 106. 从中序与后序遍历序列构造二叉树 105. 从前序与中序遍历序列构造二叉树思考分析
  7. 向上造型和向下造型_动漫美少年漫画造型-仰视、俯视、情感表现
  8. 微信红包封面催生暴利灰产:有人月入三十万
  9. springcloud视频教程免费下载
  10. 英语语法笔记——基础语法(一)
  11. python3修改pip执行环境和安装软件源
  12. 《计算机网络教程》(微课版 第五版)第四章 网络层与网络互连 课后习题及答案
  13. Cocos2d之Box2d基础知识
  14. centos7部署calamari
  15. 简单几步,让Mac外接显示器更好用
  16. vue图片加载完成前增加loading效果
  17. c语言利用rand()函数生成一组不重复的随机数
  18. 个人简历应聘优势怎么写? 个人优势让你的简历模板加分
  19. どゆことの意味は何ですか?
  20. C语言写的一个攻击软件,可以让玩游戏的室友网络延迟最少1秒

热门文章

  1. 顺序表基本操作函数总结
  2. Ajax学习整理笔记
  3. Factors 分解质因数
  4. 【译】SQL Server误区30日谈-Day8-有关对索引进行在线操作的误区
  5. “个人核心竞争力”与“危机感”
  6. 好文转贴(3) —— 每个应用程序都有一个恐怖地下室 & 两个最容易被人忽略的基本代码优化技术...
  7. 奥运年08/07/19我正式加入博客园,开始.net的新征程^-^
  8. vlan之间互相访问_VLAN的划分和网络的配置实例
  9. angularjs全栈开发知乎_为什么你要去尝试全栈开发?
  10. mysql 字符串不限长度,mysql中的字符串长度是否有限制?