python爬取豆瓣電影資訊
'''
用到的主要知識:(詳情見官方文件)
1. requests
2. BeautifulSoup
3. codecs
4. os
'''
#-*-coding:utf-8
import requests
from bs4 import BeautifulSoup
import lxml
import os
import codecs
'''
s=requests.Session() #設定session用來跨對話請求,這裡會自動儲存cookies
url='https://accounts.douban.com/login' #登入豆瓣的頁面
headers={
'User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.99 Safari/537.36',
'Referer':'https://accounts.douban.com/login'
} #設定請求頭
re=requests.get(url)
html=re.text
soup=BeautifulSoup(html,'lxml')
all_input=soup.find_all('input',type='hidden')
input_value=all_input[2].get('value') #得到請求表單上的captcha-id的值
img_url=soup.find('img',id='captcha_image').get('src')
solution=str(raw_input('%s:'%img_url)) #得到驗證碼,這裡需要手動的輸入
#請求表單
formdata={
'source':'None',
'redir':'https://www.douban.com/',
'form_email':' [email protected]',
'form_password':'as676767as',
'captcha-solution':solution,
'captcha-id':input_value,
'login':'登入'
}
r=s.post(url,data=formdata,headers=headers) #post登入
#用來檢驗是否已經完成了登入
sec_url='https://www.douban.com/group/guide?guide=1'
res=s.get(sec_url)
print res.text
'''
----------
----------
**#以上是基本的思路,下面是用類將程式碼封裝起來**
class DouBan():
def __init__(self,log_url):
self.log_url=log_url
self.headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.99 Safari/537.36',
'Referer': 'https://accounts.douban.com/login'
} # 設定請求頭
self.s=requests.Session() #設定session
#登入
def log_in(self):
solution,input_value=self.get_captcha_solution_id()
#設定登入的表單
formdata = {
'source': 'None',
'redir': 'https://www.douban.com/',
'form_email': 'username',#這裡填入自己的豆瓣賬號
'form_password': 'password',#這裡填入自己的賬號密碼
'captcha-solution': solution,
'captcha-id': input_value,
'login': '登入'
}
r = self.s.post(url, data=formdata, headers=self.headers) # post登入
#獲取登入介面的原始碼
def get_log_html(self):
re = requests.get(self.log_url)
html = re.text
return html
#獲取表單上的驗證碼和captcha-id
def get_captcha_solution_id(self):
html=self.get_log_html()
soup=BeautifulSoup(html,'lxml')
img_url = soup.find('img', id='captcha_image').get('src')
solution=str(raw_input('%s:'%img_url))
all_input = soup.find_all('input', type='hidden')
input_value = all_input[2].get('value') # 得到請求表單上的captcha-id的值
return solution,input_value
#驗證是否能夠登入
def YZ(self):
url='https://www.douban.com/group/guide?guide=1'
re=self.s.get(url)
print re.text
'''下面是爬取豆瓣電影排行榜的電影的詳細資訊'''
#獲得一頁的所有電影的url,當然如果想要獲得更多的url還是可以拓展的
def get_url(self):
all_a=[]
url='https://movie.douban.com/chart'
re=self.s.get(url)
html=re.text
soup=BeautifulSoup(html,'lxml')
all_div=soup.find_all('div',class_='pl2')
for div in all_div:
all_a.append(div.find('a').get('href')) #將所有的url儲存在一個列表中
return all_a
#下載所有的資訊寫入檔案,這裡的filename是想要存入的路徑名
def get_info(self,filename):
all_url=self.get_url()
path=os.path.normpath(filename) #規範路徑名
os.mkdir(path) #建立路徑
file=os.path.join(path,'film.txt') #將路徑和檔名連在一起構成絕對路徑
f=codecs.open(file,'w',encoding='utf-8') #開啟檔案
for url in all_url:
re=self.s.get(url)
html=re.text
soup=BeautifulSoup(html,'lxml')
div=soup.find('div',id='info')
h1=soup.find('h1') #獲得電影的標題
if div.text:
text=h1.text+div.text #得到標籤之中的內容
print text
f.write(text)
f.close() #關閉檔案
if __name__=='__main__':
url='https://accounts.douban.com/login'
app=DouBan(url)
app.log_in()
filename='g:\\film'
app.get_info(filename)
相關推薦
python爬取豆瓣電影資訊
''' 用到的主要知識:(詳情見官方文件) 1. requests 2. BeautifulSoup 3. codecs 4. os ''' #-*-coding:utf-8 import requests from bs4 import Beautif
python爬取豆瓣電影Top250的資訊
python爬取豆瓣電影Top250的資訊 2018年07月25日 20:03:14 呢喃無音 閱讀數:50 python爬取豆瓣電影Top250的資訊。 初學,所以程式碼的不夠美觀和精煉。 如果程式碼有錯,請各位讀者在評論區評論,以免誤導其他同學。 (
Python爬蟲入門 | 2 爬取豆瓣電影資訊
這是一個適用於小白的Python爬蟲免費教學課程,只有7節,讓零基礎的你初步瞭解爬蟲,跟著課程內容能自己爬取資源。看著文章,開啟電腦動手實踐,平均45分鐘就能學完一節,如果你願意,今天內你就可以邁入爬蟲的大門啦~ 好啦,正式開始我們的第二節課《爬取豆瓣電影資訊
python 爬取豆瓣電影案例
數據 odin span content html temp com str self # conding=utf-8 from parse import parse_url import json class DoubanSpider: def __init
python 爬取豆瓣電影評論,並進行詞雲展示及出現的問題解決辦法
本文旨在提供爬取豆瓣電影《我不是藥神》評論和詞雲展示的程式碼樣例 1、分析URL 2、爬取前10頁評論 3、進行詞雲展示 1、分析URL 我不是藥神 短評 第一頁url https://movie.douban.com/subject/26752088/comments?start=0&limit=2
Python爬取豆瓣電影的短評資料並進行詞雲分析處理
前言 對於爬蟲很不陌生,而爬蟲最為經典的案例就是爬取豆瓣上面的電影資料了,今天小編就介紹一下如果爬取豆瓣上面電影影評,以《我不是藥神》為例。 基本環境配置 版本:Python3.6 系統:Windows 本人對於Python學習建立了一個小小的學習圈子,為各位提供了
使用python爬取豆瓣電影圖片(-)
學python沒多久,主要想用它來做爬蟲,寫api建議用node.js,做全站頁面渲染用php搞定,做爬蟲還得看python: 這裡沒有用python的一些爬蟲框架,先採用python內建模組urllib直接處理頁面抓取,然後解析內容然後直接下載圖片: 直接抓取豆瓣圖片
python爬取豆瓣電影top250
簡要介紹: 爬取豆瓣電影top250上相關電影的資訊,包括影片連結、影片名稱、上映時間、排名、豆瓣評分、導演、劇情簡介。 使用:requests、etree、xpath 1、檢視網頁資訊,確定爬取的內容,建立資料庫: class SpiderData(pe
python爬取貓眼電影資訊
爬取TOP100所有電影的資訊,(電影名, 主演, 上映時間) 爬取該電影的宣傳封面的圖片, 儲存到本地/mnt/img/目錄中; 將獲取的資訊, 儲存到mysql資料庫中(電影名, 主演, 上映時間, 封面圖片的本地路徑) import re #<
Python爬取豆瓣電影Top250資料
初學pyhton,自己找個練手任務。爬取豆瓣電影top250,儲存為一個DataFrame資料格式,留待分析.(程式碼粗糙,留存) from bs4 import BeautifulSoup from urllib.request import url
用python爬取豆瓣電影TOP250獲取電影排名、電影名稱、電影別名、電影連結、導演、主演、年份、地點、型別、評分、評價人數、摘要、海報下載地址。
python小白,第一次爬蟲,如有不對的地方還請多多指出。用BeautifulSoup獲取電影排名、電影名稱、電影別名、電影連結、導演、主演、年份、地點、型別、評分、評價人數、摘要、海報下載地址。cur_url:每一頁的地址,例如:https://movie.douban.c
python 爬取豆瓣電影排行榜TOP250 儲存到資料庫或檔案
本篇文章爬取豆瓣電影排行榜,使用的模組:第三方模組requests,正則模組,資料庫MySQL等 import requests import re import pymysql class DouBan: def __init__(self):
python 爬取豆瓣書籍資訊
繼爬取 貓眼電影TOP100榜單 之後,再來爬一下豆瓣的書籍資訊(主要是書的資訊,評分及佔比,評論並未爬取)。原創,轉載請聯絡我。 需求:爬取豆瓣某型別標籤下的所有書籍的詳細資訊及評分 語言:python 支援庫: 正則、解析和搜尋:re、requests、bs4、lxml
案例學python——案例三:豆瓣電影資訊入庫 一起學爬蟲——通過爬取豆瓣電影top250學習requests庫的使用
閒扯皮 昨晚給高中的妹妹微信講題,函式題,小姑娘都十二點了還迷迷糊糊。今天凌晨三點多,被連續的警報聲給驚醒了,以為上海拉了防空警報,難不成地震,空襲?難道是樓下那個車主車子被堵了,長按喇叭?開窗看看,好像都不是。好鬼畜的警報聲,家裡也沒裝報警器啊,莫不成家裡煤氣漏了?起床循聲而查,報警
python爬蟲——爬取豆瓣電影top250資訊並載入到MongoDB資料庫中
最近在學習關於爬蟲方面的知識,因為剛開始接觸,還是萌新,所以有什麼錯誤的地方,歡迎大家指出 from multiprocessing import Pool from urllib.request import Request, urlopen import re, pymongo index
【Python爬蟲】Scrapy框架運用1—爬取豆瓣電影top250的電影資訊(1)
一、Step step1: 建立工程專案 1.1建立Scrapy工程專案 E:\>scrapy startproject 工程專案 1.2使用Dos指令檢視工程資料夾結構 E:\>tree /f step2: 建立spid
Python網路爬蟲:利用正則表示式爬取豆瓣電影top250排行前10頁電影資訊
在學習了幾個常用的爬取包方法後,轉入爬取實戰。 爬取豆瓣電影早已是練習爬取的常用方式了,網上各種程式碼也已經很多了,我可能現在還在做這個都太土了,不過沒事,畢竟我也才剛入門…… 這次我還是利用正則表示式進行爬取,怎麼說呢,有人說寫正則表示式很麻煩,很多人都不
團隊-張文然-需求分析-python爬蟲分類爬取豆瓣電影信息
工具 新的 翻頁 需求 使用 html 頁面 應該 一個 首先要明白爬網頁實際上就是:找到包含我們需要的信息的網址(URL)列表通過 HTTP 協議把頁面下載回來從頁面的 HTML 中解析出需要的信息找到更多這個的 URL,回到 2 繼續其次還要明白:一個好的列表應該:包含
Python開發簡單爬蟲之靜態網頁抓取篇:爬取“豆瓣電影 Top 250”電影數據
模塊 歲月 python開發 IE 女人 bubuko status 公司 使用 目標:爬取豆瓣電影TOP250的所有電影名稱,網址為:https://movie.douban.com/top250 1)確定目標網站的請求頭: 打開目標網站,在網頁空白處點擊鼠標右鍵,
Python爬蟲入門 | 爬取豆瓣電影信息
Python 編程語言 web開發這是一個適用於小白的Python爬蟲免費教學課程,只有7節,讓零基礎的你初步了解爬蟲,跟著課程內容能自己爬取資源。看著文章,打開電腦動手實踐,平均45分鐘就能學完一節,如果你願意,今天內你就可以邁入爬蟲的大門啦~好啦,正式開始我們的第二節課《爬取豆瓣電影信息》吧!啦啦哩啦啦,