python tutorial json_Python Tutorial - Parse JSON Objects with Python
This tutorial is copied from youtube.com
I uploaded it to youku.com
Hope you guys enjoy it.
And here is the source codes:
Take notice of the list comprehensions :
[v for k, v in something.items() if type(v)==unicode and v!='ok']
下面的是在python promote 里面做的。
alex@universe ~/sandbox/env_27_bottle/bottle_json $ ../bin/python
Python2.7.3 (default, Apr 10 2013, 06:20:15)
[GCC4.6.3] on linux2
Type"help", "copyright", "credits" or "license" formore information.>>> importurllib>>> importjson>>> urllib.urlopen('http://www.similarsitesearch.com/api/similar/ebay.com').read()'{"num":20,"status":"ok","r0":"http:\\/\\/us.ebid.net\\/","r1":"http:\\/\\/www.auctionzip.com\\/","r2":"http:\\/\\/www.propertyroom.com\\/","r3":"http:\\/\\/www.trademe.co.nz\\/","r4":"http:\\/\\/www.bidspotter.com\\/","r5":"http:\\/\\/www.bidcactus.com\\/","r6":"http:\\/\\/www.purplewave.com\\/","r7":"http:\\/\\/www.beezid.com\\/","r8":"http:\\/\\/www.cqout.com\\/","r9":"http:\\/\\/www.shopgoodwill.com\\/","r10":"http:\\/\\/www.ha.com\\/","r11":"http:\\/\\/www.rasmus.com\\/","r12":"http:\\/\\/www.webidz.com\\/","r13":"http:\\/\\/www.ebay.co.uk\\/","r14":"http:\\/\\/online-auction-sites.toptenreviews.com\\/","r15":"http:\\/\\/www.policeauctions.com\\/","r16":"http:\\/\\/www.quibids.com\\/","r17":"http:\\/\\/www.icollector.com\\/","r18":"http:\\/\\/www.ioffer.com\\/","r19":"http:\\/\\/www.auctionlotwatch.co.uk\\/"}'
>>> json.loads( urllib.urlopen('http://www.similarsitesearch.com/api/similar/ebay.com').read() )
{u'r16': u'http://www.quibids.com/', u'num': 20, u'status': u'ok', u'r17': u'http://www.icollector.com/', u'r14': u'http://online-auction-sites.toptenreviews.com/', u'r15': u'http://www.policeauctions.com/', u'r12': u'http://www.webidz.com/', u'r13': u'http://www.ebay.co.uk/', u'r10': u'http://www.ha.com/', u'r11': u'http://www.rasmus.com/', u'r18': u'http://www.ioffer.com/', u'r19': u'http://www.auctionlotwatch.co.uk/', u'r4': u'http://www.bidspotter.com/', u'r5': u'http://www.bidcactus.com/', u'r6': u'http://www.purplewave.com/', u'r7': u'http://www.beezid.com/', u'r0': u'http://us.ebid.net/', u'r1': u'http://www.auctionzip.com/', u'r2': u'http://www.propertyroom.com/', u'r3': u'http://www.trademe.co.nz/', u'r8': u'http://www.cqout.com/', u'r9': u'http://www.shopgoodwill.com/'}
>>> [v for k, v in json.loads( urllib.urlopen('http://www.similarsitesearch.com/api/similar/ebay.com').read() ).items() ]
[u'http://www.quibids.com/', 20, u'ok', u'http://www.icollector.com/', u'http://online-auction-sites.toptenreviews.com/', u'http://www.policeauctions.com/', u'http://www.webidz.com/', u'http://www.ebay.co.uk/', u'http://www.ha.com/', u'http://www.rasmus.com/', u'http://www.ioffer.com/', u'http://www.auctionlotwatch.co.uk/', u'http://www.bidspotter.com/', u'http://www.bidcactus.com/', u'http://www.purplewave.com/', u'http://www.beezid.com/', u'http://us.ebid.net/', u'http://www.auctionzip.com/', u'http://www.propertyroom.com/', u'http://www.trademe.co.nz/', u'http://www.cqout.com/', u'http://www.shopgoodwill.com/']
>>> [v for k, v in json.loads( urllib.urlopen('http://www.similarsitesearch.com/api/similar/ebay.com').read() ).items() if type(v)==unicode and v!='ok']
[u'http://www.quibids.com/', u'http://www.icollector.com/', u'http://online-auction-sites.toptenreviews.com/', u'http://www.policeauctions.com/', u'http://www.webidz.com/', u'http://www.ebay.co.uk/', u'http://www.ha.com/', u'http://www.rasmus.com/', u'http://www.ioffer.com/', u'http://www.auctionlotwatch.co.uk/', u'http://www.bidspotter.com/', u'http://www.bidcactus.com/', u'http://www.purplewave.com/', u'http://www.beezid.com/', u'http://us.ebid.net/', u'http://www.auctionzip.com/', u'http://www.propertyroom.com/', u'http://www.trademe.co.nz/', u'http://www.cqout.com/', u'http://www.shopgoodwill.com/']
可以参考下面我写的全文:
这里是全部写好的源代码:
还没有做错误处理,比如说用户输入的网站有问题,还有,用户的internet 没有链接上。
以后可以在except 里面着重强调一下。
先上代码为快:
'''To search similar site
For example:
$python parseJson.py ebay.com
This will return a result like this blow:
[u'http://www.quibids.com/', u'http://www.icollector.com/', ... ]
Coded by Spaceship9'''
importurllibimportjsonfrom os importsysdefsearchSite(site):'''To return those similar sites which are the same as the variable site'''
try:#the variable site in this case should be like this
#It is a website domain name
#For instance: ebay.com
#To open the URL
#This will return a socket._fileobject which would look like
#>
site = 'http://www.similarsitesearch.com/api/similar/' +site
tmp=urllib.urlopen(site)#To get all the content of the response
#In this case, we will get a JSON-like dictionary object
#It would look like
#'{"num":20,"status":"ok","r0":"http:\\/\\/us.ebid.net\\/","r1":"http:\\/\\/www.auctionzip.com\\/", ... }'
tmp =tmp.read()#Here the http:\\/\\/us.ebid.net\\/ refers to http://...
#Now we are going to make it be like http://
#To make it be a JSON object in python, which is in a format of dictionary in this case
tmp =json.loads(tmp)#Now print them out using list comprehension
#under some conditions
return [ v for k,v in tmp.items() if type(v)==unicode and v!='ok']except:return "Please check your internet connect or the website spelling :)"
if __name__ == "__main__":if len(sys.argv[:])==2:print searchSite(sys.argv[1])else:print "Please input one site every time you want to search. :)"
当然吧上面的代码全部写道一行里面,也不是不行,是可以的。但是觉得是没有必要的。看起来太负责。之所以分开写,是为了便于理解。
下面是效果图。可以看一下
一个比较简单的输出网站相似的功能。使用的是别的网站的API,很好用的说,是JSON版的哈哈。
这里,用来查看帮助:
弄得像个样子,呵呵。可以做一个简单的搜索同类网站的小程序了。还不错吧。
Hv Fun
Happy Coding
python tutorial json_Python Tutorial - Parse JSON Objects with Python相关推荐
- python打印json_Python漂亮打印JSON
python打印json We can use the Python json module to pretty-print the JSON data. 我们可以使用Python json模块漂亮地 ...
- Python Parse JSON –转储,加载
In this tutorial we will be discussing on Python JSON; how to encode and decode JSON data using pyth ...
- python生成json_Python JSON 教程
Python JSON 教程 本文我们通过示例学习python中解析.读取和写入json.同时也涉及到转换json至字典和格式化打印. 1. json 介绍 JSON (JavaScript Obje ...
- python处理json_Python处理JSON
Python处理JSON (如果阅读效果不佳,可戳这里) 概念 序列化(Serialization):将对象的状态信息转换为可以存储或可以通过网络传输的过程,传输的格式可以是JSON.XML等.反序列 ...
- python解析json_python解析json文件
概念 序列化(Serialization):将对象的状态信息转换为可以存储或可以通过网络传输的过程,传输的格式可以是JSON.XML等.反序列化就是从存储区域(JSON,XML)读取反序列化对象的状态 ...
- python操作json_Python学习之利用Python处理JSON格式数据
最近在研究利用zabbix的自动发现功能来监控一台服务器上的多个Redis端口.网上有篇文章写个Python程序来发现Redis端口并显示成JSON格式.这里就学习下Python如何处理JSON格式数 ...
- python自动解析json_Python语言解析JSON详解
本文主要向大家介绍了Python语言解析JSON详解,通过具体的内容向大家展示,希望对大家学习Python语言有所帮助. JSON 函数使用 JSON 函数需要导入 json 库:import jso ...
- python生成json_Python 生成json文件
原博文 2018-04-12 17:00 − 1.数据准备 数据下载 2.python代码 import datetime import os import mssqlhelper ms = mssq ...
- python生成json_python之生成多层json结构的实现
网上关于生成多层json结构的比较少,基本都是关于添加元素,解析,怎么转化为json之类的 下面就以文章信息的json为基础来构建多层json. 生成最基本的一个json: import json a ...
最新文章
- 不支持打开非业务域名htts:....请重新配置
- 谁说程序员干到 35 岁就不行了?
- android服务的原理,Android学习笔记:IntentService
- How many levels are there at the in the digital transformation?
- c++11-template template Parameter
- Nginx的应用之安装配置
- 计算机怎么清空d盘内容,电脑怎么样清理D盘。
- 计算机系统u盘判断,U盘真实容量检测工具
- canvas制作呼吸灯
- ARP协议(2)ARP协议格式详解
- swift 框架大全
- k-means+python︱scikit-learn中的KMeans聚类实现( + MiniBatchKMeans)
- 上海市四金和税的算法
- python时间函数纳秒_在Python中以秒和纳秒获取POSIX / Unix时间?
- html5中float的用法,float的用法总结大全
- 大厂钟爱的全链路压测有什么意义?四种压测方案详细对比分析
- matlab设置坐标数值,Matlab中描点及坐标设置相关
- 跟着团子学SAP PPM-项目组合概览-项目组合结构
- 统计学专业综合【个人笔记】
- Android6 M Dialer完全总结
热门文章
- 74HC245三态输出八路信号收发器
- windows如何远程桌面mac
- 局域网bs虚拟服务器怎么创建,搭建局域网地图服务器
- 如何将应用隐藏成一个计算机,局域网中如何隐藏自己的计算机
- 为什么低代码治好了CIO们的 “精神内耗” ?
- 网渲显示服务器错误,网络渲染疑难解答指南 | 3ds Max 2021 | Autodesk Knowledge Network...
- 高空核爆与雷电电磁脉冲特征及能量吸收技术(摘要)
- 微博爬虫及舆情分析-3.文本清理与制作词云
- 解决: Error Code: 2013. Lost connection to MySQL server during query
- 怎么将不可编辑的英文PDF文档翻译成中文