# -*- coding: UTF-8 -*-
# python2爬虫
import urllib f = urllib.urlopen("http://www.itcast.cn/")
print f.readline() # 读取html页面的第一行
print f.read() # ,读取源代码,该网址源代码为utf-8格式
# read(),readline(),readlines(),fileno(),close(),这些使用方法与文件对象完全一样
print f.info() # 获取网页所在服务器的头部信息
print f.getcode() # 获取网页状态码
print f.geturl() # 返回请求的url
f.close() # 打开文件后,记得一定关闭防止内存没有回收,后果不堪回想 print urllib.urlopen('http://www.itcast.cn/23644657dafhgsg').getcode()
# 网页状态码
# 200正常访问 301重定向
# 302临时重定向(不常见) 404网页不存在 403禁止访问 500服务器忙,无响应,过会才行
# HTTP权威指南,专门介绍http协议,Web开发和服务器端开发方向必备 url = 'http://www.163.com/'
html = urllib.urlopen(url) # 打开网页
print html.read().decode('gbk').encode('utf-8') # 该网址源代码格式是gb2312,全部统一成gbk,然后再转化为utf-8格式
print html.read().decode('gbk','ignore').encode('utf-8')#当一些小网站编码混乱不规范时,可用'ignore'来帮助解决
# 总结
# urllib 简单易用的抓取模块
# urllib.urlopen()方法,获得类文件对象
# read()读取文件内容
# info()获取网页Header信息
# getcode()获取网页状态码
# geturl()获取传入的网址url f = urllib.urlopen('http://i1.szhomeimg.com/n/2014/02/02/0202002423269.JPG')
print f.getcode() # 查看是否能打开
print f.readline() # 图片的内容看不懂
f.close()
# urlretrieve方法将url定位到的html文件下载到你的本地硬盘中。如果不指定filename,则会存为临时文件。
urllib.urlretrieve('http://i1.szhomeimg.com/n/2014/02/02/0202002423269.JPG', filename='D:\pachong\worm1.jpg')
url = "http://www.itcast.cn/"
urllib.urlretrieve(url, 'D:\\pachong\\download.txt') # 网页抓取,下载网页(也可以将txt格式转成html)
urllib.urlretrieve(url, 'D:\\pachong\\download.html')

  

爬虫1_python2的更多相关文章

  1. 设计爬虫Hawk背后的故事

    本文写于圣诞节北京下午慵懒的午后.本文偏技术向,不过应该大部分人能看懂. 五年之痒 2016年,能记入个人年终总结的事情没几件,其中一个便是开源了Hawk.我花不少时间优化和推广它,得到的评价还算比较 ...

  2. Scrapy框架爬虫初探——中关村在线手机参数数据爬取

    关于Scrapy如何安装部署的文章已经相当多了,但是网上实战的例子还不是很多,近来正好在学习该爬虫框架,就简单写了个Spider Demo来实践.作为硬件数码控,我选择了经常光顾的中关村在线的手机页面 ...

  3. Python 爬虫模拟登陆知乎

    在之前写过一篇使用python爬虫爬取电影天堂资源的博客,重点是如何解析页面和提高爬虫的效率.由于电影天堂上的资源获取权限是所有人都一样的,所以不需要进行登录验证操作,写完那篇文章后又花了些时间研究了 ...

  4. scrapy爬虫docker部署

    spider_docker 接我上篇博客,为爬虫引用创建container,包括的模块:scrapy, mongo, celery, rabbitmq,连接https://github.com/Liu ...

  5. scrapy 知乎用户信息爬虫

    zhihu_spider 此项目的功能是爬取知乎用户信息以及人际拓扑关系,爬虫框架使用scrapy,数据存储使用mongo,下载这些数据感觉也没什么用,就当为大家学习scrapy提供一个例子吧.代码地 ...

  6. 120项改进:开源超级爬虫Hawk 2.0 重磅发布!

    沙漠君在历时半年,修改无数bug,更新一票新功能后,在今天隆重推出最新改进的超级爬虫Hawk 2.0! 啥?你不知道Hawk干吗用的? 这是采集数据的挖掘机,网络猎杀的重狙!半年多以前,沙漠君写了一篇 ...

  7. Python爬虫小白入门(四)PhatomJS+Selenium第一篇

    一.前言 在上一篇博文中,我们的爬虫面临着一个问题,在爬取Unsplash网站的时候,由于网站是下拉刷新,并没有分页.所以不能够通过页码获取页面的url来分别发送网络请求.我也尝试了其他方式,比如下拉 ...

  8. Python多线程爬虫爬取电影天堂资源

    最近花些时间学习了一下Python,并写了一个多线程的爬虫程序来获取电影天堂上资源的迅雷下载地址,代码已经上传到GitHub上了,需要的同学可以自行下载.刚开始学习python希望可以获得宝贵的意见. ...

  9. QQ空间动态爬虫

    作者:虚静 链接:https://zhuanlan.zhihu.com/p/24656161 来源:知乎 著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. 先说明几件事: 题目的意 ...

随机推荐

  1. Intellij IDEA生成JavaDoc(转)

    Intellij IDEA生成JavaDoc(转)

  2. C++ com

    http://www.cnblogs.com/hlxs/p/3783920.html 昨天看了<COM本质论>的第一章"COM是一个更好的C++",觉得很有必要做一些笔 ...

  3. opengl Polygon Offset

    http://www.cnblogs.com/bitzhuwei/archive/2015/06/12/4571539.html#_label2 启用了Polygon Offset,那么到底要把立方体 ...

  4. Codevs 1159 最大全0子矩阵

    1159 最大全0子矩阵  时间限制: 1 s  空间限制: 128000 KB  题目等级 : 黄金 Gold 题解       题目描述 Description 在一个0,1方阵中找出其中最大的全 ...

  5. uoj#38. 【清华集训2014】奇数国(线段树+数论)

    传送门 不难看出就是要先求区间积,再求这个区间积的\(\varphi\) 因为\(\varphi(x)=x\times\frac{p_1-1}{p_1}\times\frac{p_2-1}{p_2}\ ...

  6. 教程 | Linux常用命令大全

    Linux常用命令 目录操作命令 ls 命令名称:ls 命令英文原意:list 命令所在路径:/bin/ls 执行权限:所有用户 功能描述:显示目录文件 ls (显示当前目录下文件) ls 目录名 ( ...

  7. ESQL 查询数据报 参数类型“Edm.Decimal”和“Edm.Double”不兼容

    ESQL 查询数据报 参数类型“Edm.Decimal”和“Edm.Double”不兼容 System.Data.Entity.Core.Objects.ObjectQuery<TEntity& ...

  8. PAT甲级——1112 Stucked Keyboard (字符串+stl)

    此文章同步发布在我的CSDN上:https://blog.csdn.net/weixin_44385565/article/details/90041078   1112 Stucked Keyboa ...

  9. CC06:像素翻转

    题目 有一副由NxN矩阵表示的图像,这里每个像素用一个int表示,请编写一个算法,在不占用额外内存空间的情况下(即不使用缓存矩阵),将图像顺时针旋转90度. 给定一个NxN的矩阵,和矩阵的阶数N,请返 ...

  10. Js 数组对象排序

    1.定义函数 /** * 数组对象排序函数 * @param {any} name 排序字段 * @param {any} order 升.降(这里事true.false记得处理下) */ var b ...