A、urllib
import urllib
import urllib.request
import json '''
1、loads,dumps
json.loads():将字符串转化成python的基础数据类型(字符换===》列表字典元祖,字典中必须是“”)
json.dumps():将python的python基本数据类型转化成字符串(列表,字典===》字符串)
'''
s='{"status":1000,"desc":"OK"}' #里面的值必须是双引号 result=json.loads(s) #将一个形似字典,列表,元祖的字符串转化成字典或者列表,元祖
print(result,type(result)) s1=json.dumps(result)
print (s1,type(s1))
----------------------------------------------------

  {'status': 1000, 'desc': 'OK'} <class 'dict'>
  {"status": 1000, "desc": "OK"} <class 'str'>

----------------------------------------------------

'''
2、dump,load
json.dump():
json.load()
'''
s2=urllib.request.Request("http://www.weather.com.cn/adat/sk/101050101.html")
r=urllib.request.urlopen(s2)
result=str(r.read(),encoding="utf8")
print (result,type(result))
res=json.loads(result)
print (res,type(res))
----------------------------------------------------

{"weatherinfo":{"city":"哈尔滨","cityid":"101050101","temp":"5","WD":"南风","WS":"3级","SD":"31%","WSE":"3","time":"10:00","isRadar":"1","Radar":"JC_RADAR_AZ9451_JB","njd":"暂无实况","qy":"999"}} <class 'str'>
   {'weatherinfo': {'city': '哈尔滨', 'cityid': '101050101', 'temp': '5', 'WD': '南风', 'WS': '3级', 'SD': '31%', 'WSE': '3', 'time': '10:00', 'isRadar': '1', 'Radar': 'JC_RADAR_AZ9451_JB', 'njd': '暂无实况', 'qy': '999'}} <class 'dict'>

----------------------------------------------------
'''
3、requests:第三方包
'''
import requests response=requests.get("http://www.weather.com.cn/adat/sk/101050101.html")
response.encoding="utf-8"
result=response.text
#result=response.content
print (result,type(result))
------------------------------------------------------------

{"weatherinfo":{"city":"哈尔滨","cityid":"101050101","temp":"5","WD":"南风","WS":"3级","SD":"31%","WSE":"3","time":"10:00","isRadar":"1","Radar":"JC_RADAR_AZ9451_JB","njd":"暂无实况","qy":"999"}} <class 'str'>

------------------------------------------------------------
print("-------------------------------------------------------------------------------------")

三十一、python中urllib和requests包详解的更多相关文章

  1. python中argparse模块用法实例详解

    python中argparse模块用法实例详解 这篇文章主要介绍了python中argparse模块用法,以实例形式较为详细的分析了argparse模块解析命令行参数的使用技巧,需要的朋友可以参考下 ...

  2. python中的subprocess.Popen()使用详解---以及注意的问题(死锁)

    从python2.4版本开始,可以用subprocess这个模块来产生子进程,并连接到子进程的标准输入/输出/错误中去,还可以得到子进程的返回值. subprocess意在替代其他几个老的模块或者函数 ...

  3. **Python中的深拷贝和浅拷贝详解

    Python中的深拷贝和浅拷贝详解   这篇文章主要介绍了Python中的深拷贝和浅拷贝详解,本文讲解了变量-对象-引用.可变对象-不可变对象.拷贝等内容.   要说清楚Python中的深浅拷贝,需要 ...

  4. Android SDK中的Support兼容包详解

    这篇文章主要介绍了Android SDK中的Support兼容包详解,本文详细区分了Support Library的版本区别.各种Theme的概念和使用注意事项等内容,需要的朋友可以参考下 背景 来自 ...

  5. Python中random模块生成随机数详解

    Python中random模块生成随机数详解 本文给大家汇总了一下在Python中random模块中最常用的生成随机数的方法,有需要的小伙伴可以参考下 Python中的random模块用于生成随机数. ...

  6. Python中的变量和作用域详解

    Python中的变量和作用域详解 python中的作用域分4种情况: L:local,局部作用域,即函数中定义的变量: E:enclosing,嵌套的父级函数的局部作用域,即包含此函数的上级函数的局部 ...

  7. Python中%r和%s的详解及区别_python_脚本之家

    Python中%r和%s的详解及区别_python_脚本之家 https://www.jb51.net/article/108589.htm

  8. 第7.15节 Python中classmethod定义的类方法详解

    第7.15节  Python中classmethod定义的类方法详解 类中的方法,除了实例方法外,还有两种方法,分别是类方法和静态方法.本节介绍类方法的定义和使用. 一.    类方法的定义 在类中定 ...

  9. python学习 (三十一) python中的class

    1 python的类:   Python类都继承自object. __init__: 构造函数,如果不写,有一个默认的. __init__: 这个构造函数只能有一个,Python中不能有多个构造函数. ...

随机推荐

  1. [LeetCode] 212. 单词搜索 II

    题目链接:https://leetcode-cn.com/problems/word-search-ii/ 题目描述: 给定一个二维网格 board 和一个字典中的单词列表 words,找出所有同时在 ...

  2. [LeetCode] 109. 有序链表转换二叉搜索树

    题目链接 : https://leetcode-cn.com/problems/convert-sorted-list-to-binary-search-tree/ 题目描述: 给定一个单链表,其中的 ...

  3. Cookie&Session笔记

    # 今日内容     1. 会话技术         1. Cookie         2. Session     2. JSP:入门学习 ## 会话技术     1. 会话:一次会话中包含多次请 ...

  4. ThinkPHP中的"路由"是什么意思?

    路由(route)是指根据url, 分配到对应的处理程序的映射. 简单来说,就是一个路径的解析,根据客户端提交的路径,将请求解析到相应的模块/控制器/方法上. 转载自:https://blog.csd ...

  5. linux 深入应用 NFS

    以下实验大家用主机名来区分服务器端和客户端, 服务器端为 NFS_Server ip-192.168.1.4: 客户端为 NFS_Client ip-192.168.1.5: 实例一 将/tmp 分享 ...

  6. GUI学习之二十一——QSlider、QScroll、QDial学习总结

    上一章我们学习了QAbstractSlider的用法,在讲功能的时候我们是借助了它的子类QSlider来实现的,今天来学习一下它的三个子类——QSlider.QScroll和QDial. 一.QSli ...

  7. 如何用DNS+GeoIP+Nginx+Varnish做世界级的CDN

    如何用DNS+GeoIP+Nginx+Varnish做世界级的CDN     如何用BIND, GeoIP, Nginx, Varnish来创建你自己的高效的CDN网络?CDN,意思是Content ...

  8. 【SaltStack官方版】—— states教程, part 4 - states 说明

    STATES TUTORIAL, PART 4 本教程建立在第1部分.第2部分.第3部分涵盖的主题上.建议您从此开始.这章教程我们将讨论更多 sls 文件的扩展模板和配置技巧. This part o ...

  9. linux运维、架构之路-Git+Jenkins实现自动化部署

    一.Jenkins介绍          jenkins是一个用JAVA编写的开源的持续集成工具,运行在servlet容器中,支持软件配置管理(SCM)工具,可以执行基于APACHE ANT和APAC ...

  10. 前端面试题常考&必考之--盒子模型和box-sizing(项目中经常使用)

    主要考察width的值,包括padding\border\content等属性??? box-sizing属性是css3特有的哦*** 1>当box-sizing:content-box;时,跟 ...