python爬虫学习小程序

简介:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
#coding:utf-8
#-------------------------------------------------------------------------------
# Name:        模块1
# Purpose:
#
# Author:      mrwang
#
# Created:     18/04/2014
# Copyright:   (c) mrwang 2014
# Licence:     <your licence>
#-------------------------------------------------------------------------------
import  urllib
def  main():
     url  =  'http://xxxxxxx.xx'
     html  =  urllib.urlopen(url)
     # print html.read() #读取内容
     # print html.read().decode('gbk').encode('utf-8') #乱码解决
     # print html.read().decode('gbk', 'ignore').encode('utf-8') #一个页面多个编码 加ignore 忽略无法显示的字符
     # print html.info() #查看网页头部信息
     '''
     Connection: close
     Date: Fri, 18 Apr 2014 03:13:46 GMT
     Server: Microsoft-IIS/6.0
     MicrosoftOfficeWebServer: 5.0_Pub
     pragma: no-cache
     cache-control: private
     Content-Length: 50853
     Content-Type: text/html
     Expires: Thu, 17 Apr 2014 03:13:44 GMT
     Set-Cookie: web%5Fid=9952508807; path=/
     Set-Cookie: ASPSESSIONIDQCTQRBQA=NJFIJEBAIFPPLGFKELICDDEL; path=/
     Cache-control: no-cache
     '''
     # print html.getcode() #返回访问状态码
     # print html.geturl() #返回网页
     # urllib.urlretrieve(url, "c:\\abc.txt") #下载网页
     # html.close() #关闭连接
     '''
     urllib.urlretrieve 方法使用
     1 传入网址
     2 传入本地保存路径文件名
     3 一个函数调用,我们可以任意定义这个函数,但是这个函数一定要有三个参数
         参数1 到目前为止传递的数据块数量
         参数2 每个数据块的大小,单位byte,字节
         参数3 获取的文件的大小 有时候会返回-1
     '''
     urllib.urlretrieve(url,  'C://a.html' , callback)
def  callback(a, b, c):
     '''
     @参数a 到目前为止传递的数据块数量
     @参数b 每个数据块的大小,单位byte,字节
     @参数c 获取的文件的大小 有时候会返回-1
     '''
     down_progress  =  100.0  *  *  /  c
     if  down_progress >  100 :
         down_progress  =  100
     print  "%.2f%%"  %  down_progress,  #后面加上 , 就不会换行
     '''
     0.00% 16.11% 32.22% 48.33% 64.44% 80.55% 96.66% 100.00%
     '''
if  __name__  = =  '__main__' :
     main()
本文转自    拖鞋崽      51CTO博客,原文链接:http://blog.51cto.com/1992mrwang/1398011
相关文章
|
9天前
|
Python
python学习3-选择结构、bool值、pass语句
python学习3-选择结构、bool值、pass语句
|
2天前
|
数据采集 存储 JSON
Python爬虫面试:requests、BeautifulSoup与Scrapy详解
【4月更文挑战第19天】本文聚焦于Python爬虫面试中的核心库——requests、BeautifulSoup和Scrapy。讲解了它们的常见问题、易错点及应对策略。对于requests,强调了异常处理、代理设置和请求重试;BeautifulSoup部分提到选择器使用、动态内容处理和解析效率优化;而Scrapy则关注项目架构、数据存储和分布式爬虫。通过实例代码,帮助读者深化理解并提升面试表现。
11 0
|
5天前
|
小程序 JavaScript Java
基于SpringBoot+Vue+uniapp微信小程序的英语学习交流平台的详细设计和实现
基于SpringBoot+Vue+uniapp微信小程序的英语学习交流平台的详细设计和实现
21 2
|
5天前
|
小程序 JavaScript Java
基于SpringBoot+Vue+uniapp微信小程序的移动学习平台的详细设计和实现
基于SpringBoot+Vue+uniapp微信小程序的移动学习平台的详细设计和实现
30 1
|
5天前
|
数据采集 JavaScript 前端开发
使用Python打造爬虫程序之破茧而出:Python爬虫遭遇反爬虫机制及应对策略
【4月更文挑战第19天】本文探讨了Python爬虫应对反爬虫机制的策略。常见的反爬虫机制包括User-Agent检测、IP限制、动态加载内容、验证码验证和Cookie跟踪。应对策略包括设置合理User-Agent、使用代理IP、处理动态加载内容、验证码识别及维护Cookie。此外,还提到高级策略如降低请求频率、模拟人类行为、分布式爬虫和学习网站规则。开发者需不断学习新策略,同时遵守规则和法律法规,确保爬虫的稳定性和合法性。
|
7天前
|
机器学习/深度学习 算法 Python
使用Python实现集成学习算法:Bagging与Boosting
使用Python实现集成学习算法:Bagging与Boosting
18 0
|
8天前
|
Python
python学习-函数模块,数据结构,字符串和列表(下)
python学习-函数模块,数据结构,字符串和列表
49 0
|
9天前
|
Python
python学习14-模块与包
python学习14-模块与包
|
9天前
|
Python
python学习12-类对象和实例对象
python学习12-类对象和实例对象
|
9天前
|
数据采集 Python
python学习9-字符串
python学习9-字符串