說(shuō)到編程語(yǔ)言python,有一個(gè)著(zhù)名的格言'余生太短,只用python'。如果要分析為什么會(huì )存在這么一句格言?python的語(yǔ)法并不簡(jiǎn)單,有復雜難懂的部分,之所以又這樣一句格言,是因為python中有很多強大的模塊,就像一個(gè)武器庫。
Python正式由于這些模塊的出現,只要引入這個(gè)模塊,調用這個(gè)模塊的集成函數,問(wèn)題迎刃而解;不需要從頭開(kāi)始,節省了大量的時(shí)間。
這篇文章就主要討論python在web方面的兩個(gè)第三方模塊:bulitwith模塊和python-whois模塊。
builtwith模塊可以幫助我們識別web網(wǎng)站所用的技術(shù),包括前端和后端。如果要使用這個(gè)模塊,首先要安裝這個(gè)模塊。安裝起來(lái)也很簡(jiǎn)單,只需要在cmd命令框中輸入'pip install builtwith',就可以安裝成功。
使用此模塊時(shí),首先使用語(yǔ)句'import builtwith as bl',引入并重命名這個(gè)模塊,然后使用函數bl.parse('https://xxx')就可以識別這個(gè)網(wǎng)站的開(kāi)發(fā)技術(shù)。
比如上面這個(gè)例子,可以看到某些網(wǎng)站的前端框架使用了jQuery框架,服務(wù)器使用了apache tomcat,服務(wù)器的操作系統使用了unix。
如果我們想進(jìn)一步,思考這個(gè)模塊是如何得到這些結果的?我認為需要研究http協(xié)議,懂得web技術(shù)的人,如果對http協(xié)議研究的很透徹,只需要一個(gè)瀏覽器查該網(wǎng)站的http數據包,就大概斷定這個(gè)網(wǎng)站所使用的技術(shù)。
另一個(gè)模塊python-whois模塊,可以幫助我們查看網(wǎng)站的域名信息。該模塊也是一個(gè)第三方模塊庫。安裝此模塊,需要在cmd命令行窗口中,輸入'pip install python-whois',然后點(diǎn)擊enter鍵,進(jìn)行安裝。
使用python-whois模塊,首先要引入這個(gè)模塊,在python的運行環(huán)境中輸入'import python-whois as wl',引入這個(gè)模塊并將它重命名為wl。然后調用函數wh.whois('xxx'),就可以查詢(xún)某一網(wǎng)站的域名信息,注意在輸入時(shí),不能寫(xiě)www字樣。
查詢(xún)的結果會(huì )顯示域名,注冊時(shí)間等信息。如果進(jìn)一步思考這個(gè)模塊的運行機制,我猜測調用了域名網(wǎng)站的api,從域名數據庫中得到這些數據。
(該文章為原創(chuàng ),抄襲必究)
聯(lián)系客服