摘要:以下這些項目,你拿來學習學習練練手。當你每個步驟都能做到很優秀的時候,你應該考慮如何組合這四個步驟,使你的爬蟲達到效率最高,也就是所謂的爬蟲策略問題,爬蟲策略學習不是一朝一夕的事情,建議多看看一些比較優秀的爬蟲的設計方案,比如說。
(一)如何學習Python
學習Python大致可以分為以下幾個階段:
1.剛上手的時候肯定是先過一遍Python最基本的知識,比如說:變量、數據結構、語法等,基礎過的很快,基本上1~2周時間就能過完了,我當時是在這兒看的基礎:Python 簡介 | 菜鳥教程
2.看完基礎后,就是做一些小項目鞏固基礎,比方說:做一個終端計算器,如果實在找不到什么練手項目,可以在 Codecademy - learn to code, interactively, for free 上面進行練習。
如果時間充裕的話可以買一本講Python基礎的書籍比如《Python編程》,閱讀這些書籍,在鞏固一遍基礎的同時你會發現自己諸多沒有學習到的邊邊角角,這一步是對自己基礎知識的補充。
4.Python庫是Python的精華所在,可以說Python庫組成并且造就了Python,Python庫是Python開發者的利器,所以學習Python庫就顯得尤為重要:The Python Standard Library ,Python庫很多,如果你沒有時間全部看完,不妨學習一遍常用的Python庫:Python常用庫
5.Python庫是開發者利器,用這些庫你可以做很多很多東西,最常見的網絡爬蟲、自然語言處理、圖像識別等等,這些領域都有很強大的Python庫做支持,所以當你學了Python庫之后,一定要第一時間進行練習。
6.學習使用了這些Python庫,此時的你應該是對Python十分滿意,也十分激動能遇到這樣的語言,就是這個時候不妨開始學習Python數據結構與算法,Python設計模式,這是你進一步學習的一個重要步驟:faif/python-patterns
7.當度過艱難的第六步,此時選擇你要研究的方向,如果你想做后端開發,不妨研究研究Django,再往后,就是你自己自由發揮了
(二)一些Python免費課程推薦
以下課程都為免費課程
1.python零基礎相關
適用人群:Python零基礎的初學者、Web開發程序員、運維人員、有志于從事互聯網行業以及各領域應用Python的人群,我們的python,q,qun,784758214 行業資訊,技術分享,實戰練習
? 瘋狂的Python:快速入門精講
? 零基礎入門學習Python
? 玩轉Python語言
? Python語言程序設計
? 程序設計入門
? 可汗學院公開課:計算機科學
? python 入門到精通
? Python交互式編程入門的課程主頁
? Python交互編程入門(第2部分)的課程主頁
2.python web方向
Python Django 快速Web應用開發入門
3.python爬蟲
Python實戰:一周學會爬取網頁
4.python數據分析方向
數據分析實戰基礎課程
(三)Python爬蟲需要哪些知識?
要學會使用Python爬取網頁信息無外乎以下幾點內容:
1、要會Python
2、知道網頁信息如何呈現
3、了解網頁信息如何產生
4、學會如何提取網頁信息
第一步Python是工具,所以你必須熟練掌握它,要掌握到什么程度呢?如果你只想寫一寫簡單的爬蟲,不要炫技不考慮爬蟲效率,你只需要掌握:
? 數據類型和變量
? 字符串和編碼
? 使用list和tuple
? 條件判斷、循環
? 使用dict和set
你甚至不需要掌握函數、異步、多線程、多進程,當然如果想要提高自己小爬蟲的爬蟲效率,提高數據的精確性,那么記住最好的方式是去系統的學習一遍Python,去哪兒學習?Python教程
假設已經熟悉了最基礎的Python知識,那么進入第二步:知道網頁信息如何呈現?你首先要知道所需要抓取的數據是怎樣的呈現的,就像是你要學做一幅畫,在開始之前你要知道這幅畫是用什么畫出來的,鉛筆還是水彩筆...可能種類是多樣的,但是放到網頁信息來說這兒只有兩種呈現方式:
1、HTML (HTML 簡介)
2、JSON (JSON 簡介)
HTML是用來描述網頁的一種語言
JSON是一種輕量級的數據交換格式
假設你現在知道了數據是由HTML和JSON呈現出來的,那么我們緊接著第三步:數據怎么來?數據當然是從服務器反饋給你的,為什么要反饋給你?因為你發出了請求。
“Hi~ ,服務器我要這個資源”
“正在傳輸中...”
“已經收到HTML或者JSON格式的數據”
這個請求是什么請求?要搞清楚這一點你需要了解一下http的基礎知識,更加精確來說你需要去了解GET和POST是什么,區別是什么。
很高興你使用的是Python,那么你只需要去掌握好快速上手 - Requests 2.10.0 文檔,requests可以幫你模擬發出GET和POST請求,這真是太棒了。
飯菜已經備好,兩菜一湯美味佳肴,下面就是好好享受了?,F在我們已經拿到了數據,我們需要在這些錯亂的數據中提取我們需要的數據,這時候我們有兩個選擇。
第一招:萬能鑰匙
Python正則表達式指南 ,再大再亂的內容,哪怕是大海撈針,只要告訴我這個針的樣子我都能從茫茫大海中撈出來,強大的正則表達式是你提取數據的不二之選。
第二招:笑里藏刀
Beautiful Soup 4.2.0 文檔,或許我們有更好的選擇,我們把原始數據和我們想要的數據的樣子扔個這個Beautifulsoup,然后讓它幫我們去尋找,這也是一個不錯的方案,但是論靈活性,第二招還是略遜于第一招。
第三招:雙劍合璧
最厲害的招式莫過于結合第一招和第二招了,打破天下無敵手。
基礎知識我都會,可是我還是寫不了一個爬蟲?。?br>客觀別急,這還沒完。
以下這些項目,你拿來學習學習練練手。
一些教學項目你值得擁有:
? 03. 豆瓣電影TOP250
? 04. 另一種抓取方式
(四)Python爬蟲進階
爬蟲無非分為這幾塊:分析目標、下載頁面、解析頁面、存儲內容,其中下載頁面不提。
分析目標
所謂分析就是首先你要知道你需要抓取的數據來自哪里?怎么來?普通的網站一個簡單的POST或者GET請求,不加密不反爬,幾行代碼就能模擬出來,這是最基本的,進階就是學會分析一些復雜的目標,比如說:淘寶、新浪微博登陸以及網易云的評論信息等等。
解析頁面
解析頁面主要是選擇什么庫或者那些庫結合能使解析速度更快,可能你一開始你通過種種地方了解到了bs庫,于是你對這個庫很癡迷,以后只要寫爬蟲,總是先寫上:
import requests
from bs4 import BeautifulSoup
當然bs已經很優秀了,但是并不代表可以用正則表達式解析的頁面還需要使用bs,也不代表使用lxml能解決的還要動用bs,所以這些解析庫的速度是你在進階時要考慮的問題。
存儲內容
剛開始學爬蟲,一般爬取的結果只是打印出來,最后把在終端輸出的結果復制粘貼保存就好了;后來發現麻煩會用上xlwt/openpyxl/csv的把存儲內容寫入表格,再后來使用數據庫sqlite/mysql/neo4j只要調用了庫都很簡單,當然這是入門。
進階要開始學習如何選擇合適的數據庫,或者存儲方式。當爬取的內容過千萬的時候,如何設計使存儲速度更快,比如說當既有人物關系又有人物關系的時候,一定會用neo4j來存儲關系,myslq用來存儲用戶信息,這樣分開是因為如果信息全部存入neo4j,后期的存儲速度經十分的慢。
當你每個步驟都能做到很優秀的時候,你應該考慮如何組合這四個步驟,使你的爬蟲達到效率最高,也就是所謂的爬蟲策略問題,爬蟲策略學習不是一朝一夕的事情,建議多看看一些比較優秀的爬蟲的設計方案,比如說Scrapy。
除了爬取策略以外,還有幾點也是必備的:
代理策略以及多用戶策略
代理是爬蟲進階階段必備的技能,與入門階段直接套用代理不同,在進階階段你需要考慮如何設計使用代理策略,什么時候換代理,代理的作用范圍等等,多用戶的抓取策略考慮的問題基本上與代理策略相同。
增量式抓取以及數據刷新
比如說你抓取的是一個酒店網站關于酒店價格數據信息的,那么會有這些問題:酒店的房型的價格是每天變動的,酒店網站每天會新增一批酒店,那么如何進行存儲、如何進行數據刷新都是應該考慮的問題。
3.驗證碼相關的一些問題
有很多人提到驗證碼,我個人認為驗證碼不是爬蟲主要去解決的問題,驗證碼不多的情況考慮下載到本地自己輸入驗證碼,在多的情況下考慮接入打碼平臺。
(五)Python爬蟲面試指南
前段時間快要畢業,而我又不想找自己的老本行Java開發了,所以面了很多Python爬蟲崗位。因為我在南京上學,所以我一開始只是在南京投了簡歷,我一共面試了十幾家企業,其中只有一家沒有給我發offer,其他企業都愿意給到10K的薪資,不要拿南京的薪資水平和北上深的薪資水平比較,結合面試常問的問題類型說一說我的心得體會。
第一點:Python
因為面試的是Python爬蟲崗位,面試官大多數會考察面試者的基礎的Python知識,包括但不限于:
? Python2.x與Python3.x的區別
? Python的裝飾器
? Python的異步
? Python的一些常用內置庫,比如多線程之類的
第二點:數據結構與算法
數據結構與算法是對面試者尤其是校招生面試的一個很重要的點,當然小公司不會太在意這些,從目前的招聘情況來看對面試者的數據結構與算法的重視程度與企業的好壞成正比,那些從不問你數據結構的你就要當心他們是否把你當碼農用的,當然以上情況不絕對,最終解釋權歸面試官所有。
第三點:Python爬蟲
最重要也是最關鍵的一點當然是你的Python爬蟲相關的知識與經驗儲備,這通常也是面試官考察的重點,包括但不限于:
? 你遇到過的反爬蟲的策略有哪些?
? 你常用的反反爬蟲的方案有哪些?
? 你用過多線程和異步嗎?除此之外你還用過什么方法來提高爬蟲效率?
? 有沒有做過增量式抓???
? 對Python爬蟲框架是否有了解?
第四點:爬蟲相關的項目經驗
爬蟲重在實踐,除了理論知識之外,面試官也會十分注重爬蟲相關的項目:
? 你做過哪些爬蟲項目?如果有Github最好
? 你認為你做的最好的爬蟲項目是哪個?其中解決了什么難題?有什么特別之處?
以上是我在面試過程中,會碰到的一些技術相關的問題的總結,當然面試中不光是技術這一點,但是對于做技術的,過了技術面基本上就是薪資問題了。
(六)推薦一些不錯的Python博客
如果是Python基礎的話,廖雪峰的博客教程會是一個不錯的選擇:
? Python3教程
? Python 2.7教程
當然很多剛接觸Python的同學反應廖大大的教程中部分跳躍性太大,如果覺得跳躍性太大可以結合菜鳥教程一起看:
? Python3 教程 | 菜鳥教程
? Python 基礎教程 | 菜鳥教程
(七)Python如何進階
很多人在學習編程之初都會碰到這種問題:學會了基礎的語法了,但是還是做不了項目,不知道如何下手。
當初,我學習C的時候是這樣、Java的時候是這樣、Python的時候也是這樣,其實不管什么語言、什么知識都是這樣:理論基礎知識 - 能動手做項目是有一道鴻溝的。
那么如何突破這條鴻溝?中間的橋梁是什么?
其實題主自己已經回答出來了:照抄!
所謂照抄前提是有樣本。
首先找到一些簡單易上手的項目,這些項目大多散落在Python實踐相關的書籍中、Github上,這些實戰項目知乎上都有很多推薦。
1.一些比較好的適合初學者動手的項目:
? Show-Me-the-Code/show-me-the-code
? aosabook/500lines
2.大多數的Python書里面(除了純理論書)都是有小項目的,而且書的一個優點是它會一步一步解釋這樣做的原因。
先照抄這些項目,實現這些小功能在電腦上能運行確認無誤之后,回過頭來看代碼:
? 有沒有你不理解的地方,不理解的地方標記去搜索引擎或者書中找解釋。
? 學習作者設計這個項目的思路方法,并運用到接下來的項目,如果時間充裕,建議隔天再重新再不看書的情況下重新自己實現一遍這些小項目。
如果你是跟著實戰的書敲代碼的,很多時候項目都不會一遍運行成功,那么你就要根據各種報錯去尋找原因,這也是一個學習的過程。
總結起來從Python入門跳出來的過程分為三步:照抄、照抄之后的理解、重新自己實現。
(八)Python爬蟲入門
第一:Python爬蟲學習系列教程
Python版本:3.6
整體目錄:
一、爬蟲入門
? Python爬蟲入門一之綜述
? Python爬蟲入門二之爬蟲基礎了解
? Python爬蟲入門三之Urllib庫的基本使用
? Python爬蟲入門四之Urllib庫的高級用法
? Python爬蟲入門五之URLError異常處理
? Python爬蟲入門六之Cookie的使用
? Python爬蟲入門七之正則表達式
二、爬蟲實戰
? Python爬蟲實戰一之爬取糗事百科段子
? Python爬蟲實戰二之爬取百度貼吧帖子
? Python爬蟲實戰三之實現山東大學無線網絡掉線自動重連
? Python爬蟲實戰四之抓取淘寶MM照片
? Python爬蟲實戰五之模擬登錄淘寶并獲取所有訂單
? Python爬蟲實戰六之抓取愛問知識人問題并保存至數據庫
? Python爬蟲實戰七之計算大學本學期績點
? Python爬蟲實戰八之利用Selenium抓取淘寶匿名旺旺
三、爬蟲利器
? Python爬蟲利器一之Requests庫的用法
? Python爬蟲利器二之Beautiful Soup的用法
? Python爬蟲利器三之Xpath語法與lxml庫的用法
? Python爬蟲利器四之PhantomJS的用法
? Python爬蟲利器五之Selenium的用法
? Python爬蟲利器六之PyQuery的用法
四、爬蟲進階
? Python爬蟲進階一之爬蟲框架概述
? Python爬蟲進階二之PySpider框架安裝配置
? Python爬蟲進階三之爬蟲框架Scrapy安裝配置
? Python爬蟲進階四之PySpider的用法
第二(第一的姊妹篇):Python爬蟲入門教程
Python版本:3.6
教程目錄:
? [Python]網絡爬蟲(一):抓取網頁的含義和URL基本構成
? [Python]網絡爬蟲(二):利用urllib2通過指定的URL抓取網頁內容
? [Python]網絡爬蟲(三):異常的處理和HTTP狀態碼的分類
? [Python]網絡爬蟲(四):Opener與Handler的介紹和實例應用
? [Python]網絡爬蟲(五):urllib2的使用細節與抓站技巧
? [Python]網絡爬蟲(六):一個簡單的百度貼吧的小爬蟲
? [Python]網絡爬蟲(七):Python中的正則表達式教程
? [Python]網絡爬蟲(八):糗事百科的網絡爬蟲(v0.3)源碼及解析(簡化更新)
? [Python]網絡爬蟲(九):百度貼吧的網絡爬蟲(v0.4)源碼及解析
? [Python]網絡爬蟲(十):一個爬蟲的誕生全過程(以山東大學績點運算為例)
? [Python]網絡爬蟲(11):亮劍!爬蟲框架小抓抓Scrapy閃亮登場!
? [Python]網絡爬蟲(12):爬蟲框架Scrapy的第一個爬蟲示例入門教程
希望以上的教程可以幫助到大家。
(九)Python開發微信公眾號
1、需要調用微信內部功能
需要調用微信內部功能組件的比如:公眾號收發消息|圖片、頁面分享至朋友圈、用戶授權提取用戶基本信息、微信小店、微信公眾號菜單等內部功能組件,這些功能組件在微信公眾號開發者文檔里面找到:微信公眾平臺開發者文檔
對于這些功能組件,開發者文檔都提供了詳細的接口文檔,告訴你如何調用,而你只需要用Python調用這些接口即可。比如一個很簡單的消息發送的方法如下:
當然在這所有的調用之前,需要進行一些授權驗證,同樣開發者文檔有一套完整的接入指南:接入指南 - 微信公眾平臺開發者文檔
很遺憾很多初學者在一開始看這份文檔的時候并不能看懂,所以這里也推薦一些我以前學習摸索的過程中使用到的一些簡單易學的教程。
你可以先做一個簡單的微信機器人練練手(零基礎十分容易上手):
? 使用python一步一步搭建微信公眾平臺(一)
? 使用python一步一步搭建微信公眾平臺(二)----搭建一個中英互譯的翻譯工具
? 使用python一步一步搭建微信公眾平臺(三)----添加用戶關注后的歡迎信息與聽音樂功能
? 使用python一步一步搭建微信公眾平臺(四)----將小黃雞引入微信自動回復
? 使用python一步一步搭建微信公眾平臺(五)----使用mysql服務來記錄用戶的反饋
如果你已經能按照以上的教程搭建一個完整的微信機器人了,基本上對于微信收發消息等等簡單功能已經沒有什么障礙了。下面再繼續學習如下教程,開始學習如何調用其他一些相對來說比較復雜的接口。
? 微信公眾平臺開發入門教程
? 微信公眾平臺開發—天氣預報
? 微信公眾平臺開發—小黃雞
? 微信公眾平臺開發—人臉識別
? 微信公眾平臺開發—百度地圖
? 微信公眾平臺開發—笑話
? 微信公眾平臺開發—在線點歌
? 微信公眾平臺開發—附近查詢
? 微信公眾平臺開發—快遞物流
? 微信公眾平臺開發—一鍵關注
當你實驗了如上的教程之后,相信官方文檔的所有接口調用對你來說已經小菜一碟了。
2、不需要調用微信內部功能
不需要調用微信內部功能組件的,就如同正常的web頁面一樣,比如填寫表單進行進行注冊、點擊按鈕進行跳轉等等,這些都是正常的web請求,按照正常的web開發方法走即可。
(十)Python面試概念和代碼
(一)、這兩個參數是什么意思:args,*kwargs?我們為什么要使用它們?
答:如果我們不確定往一個函數中傳入多少參數,或者我們希望以元組(tuple)或者列表(list)的形式傳參數的時候,我們可以使用args(單星號)。如果我們不知道往函數中傳遞多少個關鍵詞參數或者想傳入字典的值作為關鍵詞參數的時候我們可以使用*kwargs(雙星號),args、kwargs兩個標識符是約定俗成的用法。
另一種答法:當函數的參數前面有一個星號號的時候表示這是一個可變的位置參數,兩個星號表示這個是一個可變的關鍵詞參數。星號把序列或者集合解包(unpack)成位置參數,兩個星號把字典解包成關鍵詞參數。
(二)、談一談Python的裝飾器(decorator)
裝飾器本質上是一個Python函數,它可以讓其它函數在不作任何變動的情況下增加額外功能,裝飾器的返回值也是一個函數對象。它經常用于有切面需求的場景。比如:插入日志、性能測試、事務處理、緩存、權限校驗等。有了裝飾器我們就可以抽離出大量的與函數功能無關的雷同代碼進行重用。
有關于具體的裝飾器的用法看這里:裝飾器 - 廖雪峰的官方網站
(三)、簡要描述Python的垃圾回收機制(garbage collection)
Python中的垃圾回收是以引用計數為主,標記-清除和分代收集為輔。
引用計數:Python在內存中存儲每個對象的引用計數,如果計數變成0,該對象就會消失,分配給該對象的內存就會釋放出來。
標記-清除:一些容器對象,比如list、dict、tuple,instance等可能會出現引用循環,對于這些循環,垃圾回收器會定時回收這些循環(對象之間通過引用(指針)連在一起,構成一個有向圖,對象構成這個有向圖的節點,而引用關系構成這個有向圖的邊)。
分代收集:Python把內存根據對象存活時間劃分為三代,對象創建之后,垃圾回收器會分配它們所屬的代。每個對象都會被分配一個代,而被分配更年輕的代是被優先處理的,因此越晚創建的對象越容易被回收。
如果你想要深入了解Python的GC機制,點擊這里:[轉載]Python垃圾回收機制--完美講解!
(四)、Python多線程(multi-threading)。這是個好主意嗎?
Python并不支持真正意義上的多線程,Python提供了多線程包。Python中有一個叫Global Interpreter Lock(GIL)的東西,它能確保你的代碼中永遠只有一個線程在執行。經過GIL的處理,會增加執行的開銷。這就意味著如果你先要提高代碼執行效率,使用threading不是一個明智的選擇,當然如果你的代碼是IO密集型,多線程可以明顯提高效率,相反如果你的代碼是CPU密集型的這種情況下多線程大部分是雞肋。
(五)、 說明os,sys模塊不同,并列舉常用的模塊方法?
官方文檔:
os模板提供了一種方便的使用操作系統函數的方法
sys模板可供訪問由解釋器使用或維護的變量和與解釋器交互的函數
另一種回答:
os模塊負責程序與操作系統的交互,提供了訪問操作系統底層的接口。sys模塊負責程序與Python解釋器的交互,提供了一系列的函數和變量用戶操作Python運行時的環境。
(六)、什么是lambda表達式?它有什么好處?
簡單來說,lambda表達式通常是當你需要使用一個函數,但是又不想費腦袋去命名一個函數的時候使用,也就是通常所說的匿名函數。
lambda表達式一般的形式是:關鍵詞lambda后面緊接一個或多個參數,緊接一個冒號“:”,緊接一個表達式。lambda表達式是一個表達式不是一個語句。
(七)、Python中pass語句的作用是什么?
pass語句不會執行任何操作,一般作為占位符或者創建占位程序
(八)、Python是如何進行類型轉換的?
Python提供了將變量或值從一種類型轉換為另一種類型的內置方法。
(九)、Python里面如何拷貝一個對象?
Python中對象之間的賦值是按引用傳遞的,如果要拷貝對象需要使用標準模板中的copy
copy.copy:淺拷貝,只拷貝父對象,不拷貝父對象的子對象。
copy.deepcopy:深拷貝,拷貝父對象和子對象。
(十)、__new__和__init__的區別。
__init__為初始化方法,__new__方法是真正的構造函數。
__new__是實例創建之前被調用,它的任務是創建并返回該實例,是靜態方法
__init__是實例創建之后被調用的,然后設置對象屬性的一些初始值。
總結:__new__方法在__init__方法之前被調用,并且__new__方法的返回值將傳遞給__init__方法作為第一個參數,最后__init__給這個實例設置一些參數。
(十一)、Python中單下劃線和雙下劃線分別是什么?
__name__:一種約定,Python內部的名字,用來與用戶自定義的名字區分開,防止沖突
_name:一種約定,用來指定變量私有
__name:解釋器用_classname__name來代替這個名字用以區別和其他類相同的命名
想要更加詳細的了解這兩者的區別,請點擊:Python中的下劃線(譯文)
(十二)、說一說Python自省。
自省就是面向對象的語言所寫的程序在運行時,所能知道對象的類型。簡單一句話就是運行時能夠獲得對象的類型。比如:type()、dir()、getattr()、hasattr()、isinstance()
有關于元類以及單例模式會在后面文章中做詳細的解釋說明。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/43858.html
摘要:以上是如果你想精通網絡爬蟲的學習研究路線,按照這些步驟學習下去,可以讓你的爬蟲技術得到非常大的提升。 作者:韋瑋 轉載請注明出處 隨著大數據時代的到來,人們對數據資源的需求越來越多,而爬蟲是一種很好的自動采集數據的手段。 那么,如何才能精通Python網絡爬蟲呢?學習Python網絡爬蟲的路線應該如何進行呢?在此為大家具體進行介紹。 1、選擇一款合適的編程語言 事實上,Python、P...
摘要:適用人群爬蟲方向數據分析方向非程序員加薪四開發前后端開發是程序員職業中的熱門,目前來講,人才缺口依然很大。寄語上面就是所有方向的學習路線了,把你感興趣的方向掌握了之后,你去找工作不是什么問題的。 ...
摘要:針對的初學者,從無到有的語言如何入門,主要包括了的簡介,如何下載,如何安裝,如何使用終端,等各種開發環境進行開發,中的語法和基本知識概念和邏輯,以及繼續深入學習的方法。 ...
摘要:文章目錄前言爬取分析視頻教學成果展示福利入門到就業學習路線規劃小白快速入門爬蟲路線前言皮皮蝦一個沙雕而又有趣的憨憨少年,和大多數小伙伴們一樣喜歡聽歌游戲,當然除此之外還有寫作的興趣,,日子還很長,讓我們一起加油努力叭話 ...
閱讀 3056·2021-09-22 15:59
閱讀 1310·2021-08-30 09:46
閱讀 2272·2019-08-30 15:54
閱讀 2002·2019-08-26 12:15
閱讀 2529·2019-08-26 12:09
閱讀 1328·2019-08-26 11:57
閱讀 3333·2019-08-23 17:11
閱讀 1879·2019-08-23 15:59