1、雙擊打開pycharm開發(fā)工具,在已新建的項(xiàng)目中新建python文件,輸入文件名稱。
2、打開已新建的python文件,導(dǎo)入turtle管理包。
3、調(diào)用Screen()方法生成屏幕,并使用bgcolor()方法設(shè)置背景圖。
4、調(diào)用Turtle,并使用shape()方法和color()方法設(shè)置圖形和字體顏色。
5、接著調(diào)用speed()方法,設(shè)置繪制的速度。
6、最后,調(diào)用鼠標(biāo)點(diǎn)擊關(guān)閉的方法exitonclick,用于控制關(guān)閉窗口的方法。
Python,可以幫忙搶票,可以爬蟲東西,關(guān)于Python爬蟲怎么做?今天教大家一個(gè)案例,python爬蟲多線程實(shí)戰(zhàn):爬取美桌1080p壁紙圖片 | 技術(shù)
技術(shù)點(diǎn)分析
· 爬蟲requests
· 多線程threading
· 文件io讀寫操作
· xpath 提取ur
· 正則
實(shí)戰(zhàn)
· 分析url
搞清楚各個(gè)url 的關(guān)聯(lián)win4000.com/wallpaper_205_0_10_1.html
URL中與分類的關(guān)系:
wallpaper : 桌面壁紙
205 :壁紙分類對應(yīng)大陸明星
10 :圖片尺寸對應(yīng)1920*1080
分析到這一部,我們知道 ,如果要需要其他類型的壁紙,只需要更改網(wǎng)站分類代碼就可以了。
· 谷歌 charme ,通過右鍵檢查
chrame 瀏覽器右鍵提示。
按圖順序,依次找到對應(yīng)的html標(biāo)簽。
通過查看,我們發(fā)現(xiàn) 中間展示 的圖片是由一個(gè)ul 標(biāo)簽包裹的 多個(gè)Li
我們所要跳轉(zhuǎn)的鏈接 就在 Li 標(biāo)簽中, 這時(shí)就需要使用xpath進(jìn)行數(shù)據(jù)的提取。
到此,我們第一層url 的分析就完成了。可以寫出以下代碼段。
此時(shí)通過xpath 獲到當(dāng)前頁面中的 ul 中所有l(wèi)i 標(biāo)簽了。
那單個(gè)明星的跳轉(zhuǎn)鏈接只需要再次xpath 進(jìn)行提取就Ok了。
完成到這里你的代碼運(yùn)行結(jié)果應(yīng)該如下:是兩個(gè)列表list。
運(yùn)行結(jié)果
準(zhǔn)備下載圖片
到這,完成第一步,你已經(jīng)成功獲到 每個(gè)明星的跳轉(zhuǎn)鏈接 :
url: win4000.com/wallpaper_detail_153895.html
再次進(jìn)行url 的分析:
初步分析
通過上圖的分析,可以找到這張圖,是我們要 1080規(guī)格的。但很可惜,一共9張,現(xiàn)在只能找到一張圖片的url。
選其中兩張圖片地址對比:
pic1.win4000.com/wallpaper/2018-12-26/5c22eb195abe8.jpg
pic1.win4000.com/wallpaper/2018-12-26/5c22eb1c722dc.jpg
好像就是后面文件名不同。如果一張張取是不是很麻煩?
不信你自己去試一下。點(diǎn)再分析一下頁面,有個(gè) 【查看原圖】 選項(xiàng),點(diǎn)一下試試呢?
點(diǎn)擊上圖出,點(diǎn)完發(fā)現(xiàn)了url的變化。
再看看有沒有驚喜的地方 :
上圖為url分析。
通過上圖的分析 ,我們發(fā)現(xiàn)原來這個(gè)big頁面有我們想要的所有 1080P的圖片,而且,全是用ul 包裹,放到單個(gè)Li 標(biāo)簽中 。那簡單了,用之前的辦法 再提取一次,就出來了。代碼如下:
到這里,我們第一步就完成了一頁24個(gè)明星圖片的地址url的爬取。第二步,完成了單個(gè)明星的1080圖片地址url的爬取。下一步,我們把圖片保存到本地就順利結(jié)束。
圖片保存
按需求,要單獨(dú)到一個(gè)文件夾內(nèi)。那我們就需要在本地路徑內(nèi) 創(chuàng)建對應(yīng)的文件夾。此處使用 star_img_name 列表中的值。需要使用到i/o讀寫操作。
順利完成 這個(gè)需求:
源碼展示
代碼運(yùn)行結(jié)果若不同,可看一眼源碼:
運(yùn)行起來是不是很慢(完善版使用多線程),而且這樣看代碼,是不是有種:干干巴巴的,麻麻咧咧的,一點(diǎn)都不圓潤,盤他!!
完善版是可以完成可選分類,可選規(guī)格 ,多線程版。希望這個(gè)小實(shí)戰(zhàn)案例可以幫到大家。
有關(guān)于Python爬蟲的課程:
Python爬蟲數(shù)據(jù)挖掘基礎(chǔ)教程
python網(wǎng)絡(luò)爬蟲第一天
python網(wǎng)絡(luò)爬蟲第二天
有想學(xué)習(xí)的小伙伴,可以關(guān)注黑馬程序員,后臺(tái)回復(fù)“Python爬蟲”哦!
你說的是生成gif動(dòng)圖吧,這里簡單介紹一下吧,有2種方式,一種是利用matplotlib生成動(dòng)態(tài)圖,一種是利用moviepy和mayavi生成動(dòng)態(tài)圖,主要內(nèi)容如下:
利用matplotlib生成動(dòng)態(tài)圖:其實(shí)就是update不斷更新重繪的過程,每隔多少毫秒繪制一次,如此循環(huán)下去就能生成一副gif動(dòng)態(tài)圖,測試代碼如下:
程序運(yùn)行效果如下,生成的gif動(dòng)態(tài)圖:
使用moviepy和mayavi生成動(dòng)畫圖,這2個(gè)庫專門用來生成動(dòng)畫圖,安裝配置后,就可以繪制gif動(dòng)態(tài)圖,下面我簡單介紹一下這2個(gè)庫的安裝和使用:
1.安裝moviepy和mayavi,這個(gè)直接在cmd窗口中pip install安裝就行,安裝的過程中,還需要安裝vtk,ffmpeg,traits等依賴包,配置比較麻煩,如下:
2.安裝成功后,我們就可以進(jìn)行簡單的測試了,主要代碼及截圖如下:
繪制一個(gè)飄動(dòng)的彩色曲面,代碼如下:
效果圖如下:
繪制一個(gè)隨機(jī)轉(zhuǎn)動(dòng)的線框網(wǎng),代碼如下:
效果圖如下:
就介紹這2種繪制python生成動(dòng)態(tài)圖的方法,整個(gè)過程來看,實(shí)現(xiàn)起來比較難,需要一定的python和圖像處理基礎(chǔ),當(dāng)然,還有其他庫可以完成動(dòng)態(tài)圖的繪制,像vispy等,就更復(fù)雜了,感興趣的可以參考一下這個(gè)文章http://python.jobbole.com/81185/,介紹的很詳細(xì),相關(guān)代碼和示例都有介紹,希望以上分享的內(nèi)容能對你有所幫助吧。
這個(gè)非常簡單,Python中有現(xiàn)成的二維碼和條形碼模塊,可以直接編程實(shí)現(xiàn)二維碼和條形碼制作,非常容易,下面我簡單介紹一下實(shí)現(xiàn)過程,實(shí)驗(yàn)環(huán)境win10+python3.6+pycharm5.0,主要內(nèi)容如下:
二維碼1.首先,安裝qrcode模塊,這是一個(gè)專門用來制作二維碼的模塊,可以直接使用,安裝的話,直接在cmd窗口輸入命令“pip install qrcode”就行,如下:
2.安裝完成后,我們就可以編程來實(shí)現(xiàn)二維碼制作了,測試代碼如下,非常簡單,基本思路先設(shè)置二維碼屬性,然后添加文本內(nèi)容,最后直接生成就行:
點(diǎn)擊運(yùn)行這個(gè)程序,就會(huì)在當(dāng)前目錄下生成一個(gè)二維碼圖片,效果如下:
條形碼1.首先,安裝pybarcode模塊,這是一個(gè)專門用于制作條形碼的模塊,安裝的話,與上面安裝qrcode類似,直接輸入命令“pip install pybarcode”就行,如下:
2.安裝成功后,就可以直接編程來實(shí)現(xiàn)條形碼制作了,這里以制作EAN-13編碼的條形碼為例(EAN-8、EAN-14、Code 39等這些類型條形碼也可以),測試代碼如下,非常簡單,先傳入條形碼內(nèi)容,然后直接保存圖片就行,這里會(huì)默認(rèn)生成png圖片,所以可以不寫圖片后綴名:
運(yùn)行程序,效果如下,已經(jīng)成功生成條形碼圖片,但有一個(gè)缺點(diǎn)就是沒有標(biāo)注起始符和終止符,不是很美觀:
3.這里也可以使用pystrich模塊生成條形碼,首先也是安裝pystrich模塊,這個(gè)也直接輸入安裝命令“pip install pystrich”就行,安裝完成后,就可以直接編程實(shí)現(xiàn)條形碼制作了,測試代碼如下,也非常簡單,和pybarcode差不多:
運(yùn)行程序,生成的條形碼效果如下,這里會(huì)標(biāo)注起始符,也更美觀些,如果是Python3的話,建議使用這種方式生成條形碼:
至此,我們就完成了Python二維碼和條形碼的制作。總的來說,整個(gè)過程非常簡單,代碼量也不多,很好理解,只要你熟悉一下上面的代碼,多調(diào)試幾遍程序,很快就能掌握的,網(wǎng)上也有相關(guān)資料和教程,非常豐富、詳細(xì),感興趣的話,可以搜一下,希望以上分享的內(nèi)容能對你有所幫助吧,也歡迎大家評(píng)論、留言補(bǔ)充。