1. 程式人生 > >url短連結Python也能製作哦,方便的多!

url短連結Python也能製作哦,方便的多!

小編又和大家見面啦~

小編今天教大家如何利用python來使複雜的url變得苗條,利用tinyurl api縮略網址。

這樣的網址就能讓人更加容易記住哦~

正文

第一步:首先我們要進行一些呼叫。我們需要呼叫七個庫來完成這項工作。


 

也許我們僅匯入一個庫就可以完成這項工作,但是為了做一個更好的url縮址,最好還是匯入七個。

學習Python中有不明白推薦加入交流裙
                   號:633603797
                   群裡有志同道合的小夥伴,互幫互助,


                   群裡有免費的視訊學習教程和PDF!

第二步:用一種方法處理url縮址

請仔細看程式碼,程式碼很簡單不言而喻。但我接下來還是會說明一下。


 

你理解了嗎?我來給新手解釋一下。首先我們定義了一個make_tiny函式,它可以把一個url作為輸入。然後我們開始定義函式如何工作。url_code把一個url作為輸入然後將其編碼,也就是將其加密。然後我們將這個加密的url新增到tinyurl api的url尾部。我們開啟request_url,使用urlopen函式。最後我們將返回值轉化為utf-8,並閱讀它。為什麼要轉化?因為urlopen函式返回的是位元流而不是字串。所以為了列印或者修改,我們需要將其轉換成字串。很簡單對吧?

下一步是從使用者那裡獲取輸入。我們使用sys庫。

第三步:讓我們為我們的程式碼敲上main()函式

程式碼如下:


 

我們要做什麼?我們在利用sys.argv來獲取使用者輸入。我們沒有限制自己只能輸入一個url,而是想輸入多少url就可以輸入多少,然後可以把它們都縮短。sys.argv[1:]做的是除最開始兩個引數(從0開始)外,將剩餘的引數產生一個list。舉個例子,如果你這樣輸入:


 

然後sys.argv[1:]會跳過python 和.py,然後產生下面這個list:


 

等等!那這個map()函式在這裡做什麼呢?大多數新手會感到困惑,是因為他們大多數從來沒使用過map。map()是一個迴圈list的簡單方式,把其中內容一個接一個傳遞給函式。上面的map()函式等價如下:


 

我希望上述程式碼已經解釋清楚了關於map()函式的任何疑惑。

第四步:包裝我們的程式碼


 

把這個加到你程式碼的末尾。這會告訴我們什麼時候指令碼會被獨立於shell執行,什麼時候會被另一個指令碼呼叫。如果你想在其他專案中使用這個指令碼,這樣做會非常方便。

最後,這是完整的程式碼:


 

如果你已經儲存了這個指令碼為url_shortener.py,你可以在shell中這樣執行它:


 

如果你想儲存這些tinyurls在txt文件裡,就執行這行命令:


 

我希望你能喜歡今天的推送。這個指令碼在python2 和 python3中都可以執行。它主要針對兩種人,第一種是學習python並希望製作一個簡單卻有用的指令碼的人,還有那些希望學會如何在python中製作url網址縮略的人。

到此為止關於url縮址的用法就講解完啦。謝謝大家支援小編哦~