python实现根据用户输入从电影网站获取影片信息的方法

yipeiwu_com6年前Python基础

本文实例讲述了python实现根据用户输入从电影网站获取影片信息的方法。分享给大家供大家参考。具体如下:

这段python代码主要演示了用户终端输入,正则表达式,网页抓取等

#!/usr/bin/env python27
#Importing the modules
from BeautifulSoup import BeautifulSoup
import sys
import urllib2
import re
import json
#Ask for movie title
title = raw_input("Please enter a movie title: ")
#Ask for which year
year = raw_input("which year? ")
#Search for spaces in the title string
raw_string = re.compile(r' ')
#Replace spaces with a plus sign
searchstring = raw_string.sub('+', title)
#Prints the search string
print searchstring
#The actual query
url = "http://www.imdbapi.com/?t=" + searchstring + "&y="+year
request = urllib2.Request(url)
response = json.load(urllib2.urlopen(request))
print json.dumps(response,indent=2)

希望本文所述对大家的Python程序设计有所帮助。

相关文章

Python实现在matplotlib中两个坐标轴之间画一条直线光标的方法

Python实现在matplotlib中两个坐标轴之间画一条直线光标的方法

本文实例讲述了Python实现在matplotlib中两个坐标轴之间画一条直线光标的方法。分享给大家供大家参考。具体如下: 看看下面的例子和效果吧 # -*- coding: utf...

OpenCV 边缘检测

OpenCV 边缘检测

边缘在人类视觉和计算机视觉中均起着重要的作用。 人类能够仅凭一张背景剪影或一个草图就识别出物体类型和姿态。 其中OpenCV提供了许多边缘检测滤波函数,这些滤波函数都会将非边缘区域转为黑...

举例讲解Python设计模式编程中对抽象工厂模式的运用

举例讲解Python设计模式编程中对抽象工厂模式的运用

抽象工厂模式:提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。 优点:易于交换“产品系列”,只要更改相应的工厂即可。 缺点:建立产品的时候很繁琐,需要增加和修改很多东...

Python编程中实现迭代器的一些技巧小结

yield实现迭代器 如引言中的描述,实现一个可迭代的功能要是每次都手动实现iter,next稍稍有点麻烦,所需的代码也是比较客观。在python中也能通过借助yield的方式来实现一个...

python中几种自动微分库解析

前言 简单介绍下python的几个自动求导工具,tangent、autograd、sympy; 在各种机器学习、深度学习框架中都包含了自动微分,微分主要有这么四种:手动微分法、数值微分...