1 #-*- coding:utf-8 -*-
2 import urllib2
3 import urllib
4 html=urllib2.urlopen("http://movie.douban.com/chart").read()
5 print html
<a class="nbg" href="http://movie.douban.com/subject/24879839/" title="道士下山">
<img src="http://img3.douban.com/view/movie_poster_cover/ipst/public/p2251450614.jpg" alt="道士下山" class=""/>
</a>
1 #-*- coding:utf-8 -*-
2 import urllib2
3 from bs4 import BeautifulSoup
4
5 import sys
6 reload(sys)
7 sys.setdefaultencoding('utf8')
8
9 # 函數
10 def printPlistCode():
11 #1.得到這個網頁的 html 代碼 #
12 html = urllib2.urlopen("http://movie.douban.com/chart").read()
13
14 #2.轉換 一種格式,方便查找
15 soup = BeautifulSoup(html)
16 #3. 得到 找到的所有 包含 a 屬性是class = nbg 的代碼塊,數組
17 liResutl = soup.findAll('a', attrs = {"class" : "nbg"})
18 #4.用於拼接每個字典的字符串
19 tmpDictM = ''
20
21 #5. 遍歷這個代碼塊 數組
22 for li in liResutl:
23
24 #5.1 找到 img 標簽的代碼塊 數組
25 imageEntityArray = li.findAll('img')
26
27 #5.2 得到每個image 標簽
28 for image in imageEntityArray:
29 #5.3 得到src 這個屬性的 value 后面也一樣 類似 key value
30 link = image.get('src')
31 imageName = image.get('alt')
32 #拼接 由於 py中 {} 是一種數據處理格式,類似占位符
33 tmpDict = '''@{0}@\"name\" : @\"{1}\", @\"imageUrl\" : @\"{2}\"{3},'''
34
35 tmpDict = tmpDict.format('{',imageName,link,'}')
36
37 tmpDictM = tmpDictM + tmpDict
38
39 #6.去掉最后一個 ,
40 tmpDictM = tmpDictM[0:len(tmpDictM) - 1].decode('utf8')
41
42 #7 拼接全部
43 restultStr = '@[{0}];'.format(tmpDictM)
44
45 print restultStr
46
47
48 if __name__ == '__main__':
49 printPlistCode()
@[@{@"name" : @"進擊的巨人真人版:前篇", @"imageUrl" : @"http://img3.douban.com/view/movie_poster_cover/ipst/public/p2251690571.jpg"},@{@"name" : @"花與愛麗絲殺人事件", @"imageUrl" : @"http://img3.douban.com/view/movie_poster_cover/ipst/public/p2222398443.jpg"},@{@"name" : @"小黃人大眼萌", @"imageUrl" : @"http://img4.douban.com/view/movie_poster_cover/ipst/public/p2258235689.jpg"},@{@"name" : @"小森林 冬春篇", @"imageUrl" : @"http://img4.douban.com/view/movie_poster_cover/ipst/public/p2215147728.jpg"},@{@"name" : @"道士下山", @"imageUrl" : @"http://img3.douban.com/view/movie_poster_cover/ipst/public/p2251450614.jpg"},@{@"name" : @"深夜食堂 電影版", @"imageUrl" : @"http://img3.douban.com/view/movie_poster_cover/ipst/public/p2205014862.jpg"},@{@"name" : @"小男孩", @"imageUrl" : @"http://img4.douban.com/view/movie_poster_cover/ipst/public/p2230105606.jpg"},@{@"name" : @"頭腦特工隊", @"imageUrl" : @"http://img4.douban.com/view/movie_poster_cover/ipst/public/p2231021196.jpg"},@{@"name" : @"百元之戀", @"imageUrl" : @"http://img4.douban.com/view/movie_poster_cover/ipst/public/p2205471169.jpg"},@{@"name" : @"殺破狼2", @"imageUrl" : @"http://img4.douban.com/view/movie_poster_cover/ipst/public/p2246885606.jpg"}];
#import <Foundation/Foundation.h>
int main(int argc, const char * argv[]) {
NSArray *plistArray = @[@{@"name" : @"進擊的巨人真人版:前篇", @"imageUrl" : @"http://img3.douban.com/view/movie_poster_cover/ipst/public/p2251690571.jpg"},@{@"name" : @"花與愛麗絲殺人事件", @"imageUrl" : @"http://img3.douban.com/view/movie_poster_cover/ipst/public/p2222398443.jpg"},@{@"name" : @"小黃人大眼萌", @"imageUrl" : @"http://img4.douban.com/view/movie_poster_cover/ipst/public/p2258235689.jpg"},@{@"name" : @"小森林 冬春篇", @"imageUrl" : @"http://img4.douban.com/view/movie_poster_cover/ipst/public/p2215147728.jpg"},@{@"name" : @"道士下山", @"imageUrl" : @"http://img3.douban.com/view/movie_poster_cover/ipst/public/p2251450614.jpg"},@{@"name" : @"深夜食堂 電影版", @"imageUrl" : @"http://img3.douban.com/view/movie_poster_cover/ipst/public/p2205014862.jpg"},@{@"name" : @"小男孩", @"imageUrl" : @"http://img4.douban.com/view/movie_poster_cover/ipst/public/p2230105606.jpg"},@{@"name" : @"頭腦特工隊", @"imageUrl" : @"http://img4.douban.com/view/movie_poster_cover/ipst/public/p2231021196.jpg"},@{@"name" : @"百元之戀", @"imageUrl" : @"http://img4.douban.com/view/movie_poster_cover/ipst/public/p2205471169.jpg"},@{@"name" : @"殺破狼2", @"imageUrl" : @"http://img4.douban.com/view/movie_poster_cover/ipst/public/p2246885606.jpg"}];
//路徑可以自己選擇
[plistArray writeToFile:@"/Users/xxx/Desktop/test/movie.plist" atomically:YES];
return 0;
}