#-*- coding:utf-8 -*-
import web
import json
import requests
#from web.contrib.template import render_jinja
#render=render_jinja('templates',encoding='utf-8')用jinja2渲染
urls=(
r'/index','Index',
r'/search','Search'
)
#db=web.database(dbn='mysql',host='',user='',pw='',port=,db='',charset-'utf8')
#db.query|insert|update|delete
render=web.template.render('templates')#webpy自带的渲染
def geturl(name):
#request=requests.post('http://music.163.com/api/search/get/?type=1&s=%s&limit=10'%name,headers={'appver':'2.0.2','referer':'http://music.163.com'})
try:
result=requests.get('http://s.music.163.com/search/get/?type=1&s=%s&limit=10'%name,headers={'appver':'2.0.2','referer':'http://music.163.com'})
result=json.loads(result.content.decode('utf-8'))
if result.get('result'):
return result['result']['songs'][0]['album']['picUrl'],result['result']['songs'][0]['audio']
else:
return 'static/12.jpg','static/lizhi.mp3'
except Exception as e:
print e
class Index(object):
def GET(self):
return render.a()
class Search(object):
def GET(self):
text=web.input().get('search',None)
imgurl,mp3url=geturl(text)
return render.music(imgurl,mp3url)
if __name__=='__main__':
#print geturl('love')
web.application(urls,globals()).run()
#music.html
$def with(imgurl,mp3url,data)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
</head>
<body>
<div style='background-image:url($:imgurl);width:800px;height:600px;background-repeat:no-repeat'>
<div style='width:300px;height:32px;margin:0 auto;line-height:600px'>
<!--audio controls>
<source src="$:mp3url">
</audio-->
!--$for a in data:
    <p> $:a.title </p>--!>
<audio src="$:mp3url" controls="controls">
</audio>
</div>
</div>
</body>
</html>

  

web.py的更多相关文章

  1. web.py框架入门

    在使用微信搭建公众平台的时候,使用的是web.py这个方便简单的框架,学习一下. 框架文档:http://webpy.org/docs/0.3/tutorial.zh-cn  按照文档的内容写一遍程序 ...

  2. web.py学习心得

    1.注意判断数字时,如果是get传递的参数,一定要用int转换.不然出错. 2.$var 定义时,冒号后的内容不是python内容,需加上$符号.如$var naviId:$naviId. 3.各个模 ...

  3. web.py+html+mysql实现web端小系统的问题汇总

    利用web.py+html(bootstrap)+mysql实现了一个小型的设备管理系统,在这个过程中遇到很多问题,将问题及解决方案总结如下,有遇到类似问题的同学,希望可以帮到你们. 1.关于中文的编 ...

  4. mac OS X 配置Python+Web.py+MySQLdb环境

    MAC默认支持Python 2.7所以不用安装. 1.安装pip sudo easy_install pip 2.安装Web.py sudo pip install Web.py 3.安装MySQLd ...

  5. web.py+mysql插入中文提示query = query.encode(charset) UnicodeEncodeError: 'latin-1' codec can't encode characters in position 86-100

    对于中文编码的问题,总会出现各种各样恶心的错误,还不知道应该怎么解决,首先,你从最开头就应该关注编码问题,尽量保证所有的编码方式都是一致的 用python+web.py+mysql来写程序,首先要保证 ...

  6. Python Web.py

    安装Web.py root@bt:~# sudo pip install web.py Downloading/unpacking web.py Downloading web.py-0.37.tar ...

  7. 迁移web.py项目至git@osc的项目演示平台

    1. 开启演示平台 选择WSGI,输入应用名称,即是演示网页的网址. 2. web.py代码迁移 将Python的site-packages目录下的web文件夹复制到代码目录下,与网页程序在同一个文件 ...

  8. web.py网页模板中使用jquery

    由于$是web.py针对模板的保留字符,所以在模板文件内不能直接使用$("#id")的格式. 解决办法: 1.$$("#id")可以避免$被误解析 2.jque ...

  9. WSGI、flup、fastcgi、web.py的关系

    Apache/lighttpd: 相当于一个request proxy,根据配置,把不同的请求转发给不同的server处理,例如静态的文件请求自己处理,这个时候它就像一个web server,对于fa ...

  10. web.py simpletodo 例子

    一个很好的例子: 许多新手,特别是从 ASP/PHP/JSP 转过来的同学,经常问下面这几个问题: 所有东西都放在一个 code.py 中呀?我有好多东西该如何部署我的代码? 是不是 /index 对 ...

随机推荐

  1. elemetUi 组件--el-checkbox

    [需求]实现选择右边的

  2. POJ3207 Ikki's Story IV – Panda's Trick

    Time Limit: 1000MS   Memory Limit: 131072K Total Submissions: 9426   Accepted: 3465 Description liym ...

  3. 计算器的改良(纯字符串)o1

    原题传送门 这题比较水,就是细节..多了点. 首先字符串要处理好(废话..) 基础不行的话要多去看看书.. 然后捏,这题主要就是几个判断: 当我们读字符,如果读到运算符号,那么就要停下来,把之前的常数 ...

  4. Jquery Dom节点常用操作

    select 标签 form提交的时候 提交select标签选中的value值 1. 添加项 $("#select_id").append("<option val ...

  5. Selenium2+python自动化11-定位一组元素find_elements【转载】

    前言 前面的几篇都是讲如何定位一个元素,有时候一个页面上有多个对象需要操作,如果一个个去定位的话,比较繁琐,这时候就可以定位一组对象. webdriver 提供了定位一组元素的方法,跟前面八种定位方式 ...

  6. 使用jquery实现省市二级列表

    这里讲用到 jquery 的  each  遍历方法  追加 节点或元素方法  append  appendTO   以及 remove 清除节点 <script> $(function( ...

  7. mongodb简单安装

    参考文档: http://www.cnblogs.com/hanyinglong/archive/2016/07/21/5690611.html conf文件: dbpath = /usr/local ...

  8. AC日记——Mice and Holes codeforces 797f

    797F - Mice and Holes 思路: XXYXX: 代码: #include <cmath> #include <cstdio> #include <cst ...

  9. android 错误

    问题1 手机开发者选项 开启USB安装 问题2 怎么变成了两行 问题3 运行虚拟机报错 电脑没有启用虚拟技术或者没有安装Intel HAXM软件 sdk下找到 (或者官网下载 https://soft ...

  10. 第13届景驰-埃森哲杯广东工业大学ACM程序设计大赛 B题 跳一跳,很简单的(字符串Hash + 树上路径倍增)

    题目链接  2018广东工业大学校赛  Problem B 考虑到每条边的权值变化$26$个时刻之后一定会回到原来的状态. 那么预处理出前$26$个时刻每棵树的形态,对每棵树做一遍字符串哈希. 查询的 ...