20201123 2020-2021-2 《python程式設計》實驗三報告

課程:《Python程式設計》
班級:2011
姓名:晏鵬捷
學號:20201123
實驗教師:王志強
實驗日期:2021年6月29日
必修/選修:公選課

一、實驗內容

Python綜合應用:爬蟲、資料處理、視覺化、機器學習、神經網路、遊戲、網路安全

本次實驗:爬蟲豆瓣上關於搜尋“張紫寧”的前三十條內容

二、實驗要求

(1)程式能執行,功能豐富(需求提交原始碼,並建議錄製程式執行的視訊)
(2)綜合實踐報告,要體現實驗分析、設計、實現過程、結果等資訊,格式規範,邏輯清晰,結構合理
(3)在實踐報告中,需要對全課進行總結,並寫課程感想體會、意見和建議等

三、實驗過程

1、搭建環境

建庫requests和lxml

此時requests下出現一條紅線,按“Alt+Enter”,選擇“install package requests”,進行安裝

安裝成功所示

“lxml”操作方式同“requests”,完成後如圖

2、獲取網頁原始碼

網頁地址:https://www.douban.com/search?cat=1003&q=%E5%BC%A0%E7%B4%AB%E5%AE%81

3、獲取目標資料

開啟目標網頁

點選滑鼠右鍵點選審查元素

定位網頁內容,程式碼標藍區域在相同搜尋內容中也標藍,點選右鍵“複製”“複製x path”

得到下圖,附帶程式碼解釋

檢視程式碼,進行程式碼完善

此時程式碼只包含了一條選中內容

試執行完整程式碼,未成功,結果如下

進行網頁搜尋錯誤後修改程式碼,尋找並新增headers

執行結果如下

四、遇到問題和解決過程

錯誤:打漏了“//*”,小細節修改

未新增防止反爬機制函式def,進行新增

五、感悟思考

1、一直對python和Java充滿興趣,想深入學習應用。雖然作為大一新生剛接觸程式設計,但基本的語言還是能夠掌握的,特別是python相對來說更加簡明快捷,更容易理解,編寫時也相對順手方便。很榮幸遇到王老師引導python入門,不是單純的概念講解和理論知識灌輸,而是推薦我們邊聽邊跟著打,不僅加深記憶,也能更快抓住要點。

2、四次實驗報告其實在課上的講解不多,更多的是自己在網上查詢資料進行學習編寫,而且網上的程式碼總會有一些小錯誤,即使我們使用也需要自己修改執行,這樣我們也不會輕鬆完成作業,大大鍛鍊我的自學能力和debug能力,學會發現了很多的程式錯誤語言,例如本次的“invalid expression”等,為以後我們自己編寫執行程式積累知識

3、在實驗過程中,如果不夠細心或者知識點掌握不牢固的話,會遇到許多的小錯誤需要修改,因此會花費不少的時間和精力。本人的耐心其實原本是沒有很好的,但是經過這麼多次的實驗,能夠沉穩的面對每一次執行時出現的錯誤並修改,而不是最開始的崩潰和急躁,所以我也學會了,要細心和耐心地學會程式編寫。

六、 參考資料

https://blog.csdn.net/weiweiweiweia/article/details/87833704

https://docs.python-requests.org/zh_CN/latest/user/quickstart.html

https://blog.csdn.net/IT_XF/article/details/82184585

https://www.cnblogs.com/itworkers/p/13469527.html

https://blog.csdn.net/lm3758/article/details/82911636