我是靠谱客的博主 刻苦石头,最近开发中收集的这篇文章主要介绍python爬电影_python爬虫之获取豆瓣电影信息,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

此次是师哥给布置的任务,所以这几天就在研究如何完成获取https://movie.douban.com/top250这个网站里面250部电影的信息。

主要就是应用了python的urllib2与beautifulsoup的结合使用,也是我第一次使用爬虫,当然现在看也是基础的使用,是体会到工具的强大

还有就是借助 http://cuiqingcai.com/category/technique/python ,给予了我很大帮助。关于python的学习,这个网站给了很好的指导。

然后,现在是对python面向对象还需进一步学习理解,第一次我是按普通程序完成了,并没有建造类。之后我想用类的方法来完成,结果就是仅仅创建了两个类。

# -*- coding: utf-8 -*-

import urllib2

import re

from bs4 import BeautifulSoup

import sys

reload(sys)

sys.setdefaultencoding("utf-8")

class movies:

def __init__(self,baseUrl):

self.url=baseUrl

self.title=[]

self.info=[]

def getInfo(self):

try:

con=''

for i in range(0,250,25):

response=urllib2.urlopen(self.url+str(i)+'&fileter=')

con=con+response.read()

except urllib2.URLError,e:

if hasattr(e,"reason"):

print u"链接失败,错误原因",e.reason

html_text=con

soup=BeautifulSoup(html_text,'html.parser',from_encoding='UTF-8')

link_temp=soup.find_all('a',href=re.compile(r'subject'))

link_node=[]

for i in range(0,500,2):

link_node.append(link_temp[i])

file = open('F:/PythonFile/movies.txt', 'w')

for enter in link_node:

try:

res=urllib2.urlopen(enter['href'])

print res.getcode()

infomation=res.read()

soup1=BeautifulSoup(infomation,'html.parser',from_encoding='UTF-8')

self.info=soup1.find_all('div',id=re.compile(r'info'))

self.title=soup1.find_all('title')

each_info = self.info

each_title = self.title

for link_t in each_title:

file.write(link_t.get_text())

file.seek(0, 2)

for link_i in each_info:

file.write(link_i.get_text())

file.seek(0, 2)

except urllib2.URLError,e:

print "找不到这个网页"

file.close()

url='https://movie.douban.com/top250?start='

mov=movies(url)

mov.getInfo()看起来程序是不是很简单。其实,只要知道了每个功能在什么地方用,怎么用,最后实现起来还是很简单的。

当然,再说一次,这些都是基础的,学习之路还在继续。

最后

以上就是刻苦石头为你收集整理的python爬电影_python爬虫之获取豆瓣电影信息的全部内容,希望文章能够帮你解决python爬电影_python爬虫之获取豆瓣电影信息所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(55)

评论列表共有 0 条评论

立即
投稿
返回
顶部