從web抓取信息(1)——webbrowser

“Web 抓取”是一個術語,即利用程序下載並處理來自Web 的內容。

webbrowser:是Python 自帶的,打開瀏覽器獲取指定頁面。

webbrowser 模塊的open()函數可以啓動一個新瀏覽器,打開指定的URL。在交互式環境中輸入以下代碼,Web 瀏覽器的選項卡將打開URL 'https://www.csdn.net/'

>>> import webbrowser
>>> webbrowser.open('https://www.csdn.net/')

項目:利用webbrowser 模塊的mapIt.py

例如,將一些地址拷貝到剪貼板,並在高德地圖上打開它的地圖,這是很繁瑣的事。你可以讓這個任務減少幾步,寫一個簡單的腳本,利用剪貼板中的內容在瀏覽器中自動加載地圖。這樣,你只要將地址拷貝到剪貼板,運行該腳本,地圖就會加載。
你的程序需要做到:
• 從命令行參數或剪貼板中取得街道地址。
• 打開Web 瀏覽器,指向該地址的高德地圖頁面。
        這意味着代碼需要做下列事情:
• 從sys.argv 讀取命令行參數。 
• 讀取剪貼板內容。
• 調用webbrowser.open()函數打開外部瀏覽器。

步驟1:弄清楚URL
比如:https://www.amap.com/search?query=漢口站,可以查詢到漢口站的地圖

步驟2:建立mapIt.py

這樣當你從命令行運行它時,該腳本將使用命令行參數,而不是剪貼板。如果沒有命令行參數,程序就知道要使用剪貼板的內容。

#!python3
import webbrowser,sys,pyperclip
if len(sys.argv)>1:
    address = ' '.join(sys.argv[1:])
else:
    address = pyperclip.paste()
webbrowser.open("https://www.amap.com/search?query="+address)

①所有Python 程序的第一行應該是#!行,它告訴計算機你想讓Python 來執行這個程序。該行以#!開始,但剩下的內容取決於操作系統。

  • 在Windows 上,第一行是 #! python3。
  • 在OS X,第一行是 #! /usr/bin/env python3。
  • 在Linux 上,第一行是 #! /usr/bin/python3。

沒有#!行,你也能從IDLE 運行Python 腳本,但從命令行運行它們就需要這一行。②需要導入webbrowser 模塊,用於加載瀏覽器;導入sys 模塊,用於讀入可能的命令行參數。sys.argv 變量保存了程序的文件名和命令行參數的列表。如果這個列表中不只有文件名,那麼len(sys.argv)的返回值就會大於1,這意味着確實提供了命令行參數。命令行參數通常用空格分隔,但在這個例子中,你希望將所有參數解釋爲一個字符串。因爲sys.argv 是字符串的列表,所以你可以將它傳遞給join()方法,這將返回一個字符串。你不希望程序的名稱出現在這個字符串中,所以不是使用sys.argv,而是使用sys.argv[1:],砍掉這個數,爲此模塊內部使用。sys.argv 是獲取運行python文件的時候命令行參數,且以list形式存儲參數,sys.argv[0] 代表當前module的名字。

join函數的用法https://blog.csdn.net/doiido/article/details/43538833

③如果沒有命令行參數,程序將假定地址保存在剪貼板中。可以用pyperclip.paste()取得剪貼板的內容,並將它保存在名爲address 的變量中。pyperclip 模塊有 copy()和 paste()函數, 可以向計算機的剪貼板發送文本, 或從它接收文本。將程序的輸出發送到剪貼板, 使它很容易粘貼到郵件、文字處理程序或其他軟件中。 pyperclip 模塊不是 Python 自帶的,需要安裝它。最後,啓動外部瀏覽器訪問高德地圖的URL,調用webbrowser.open()。

步驟3:windows的.bat批處理文件運行Python腳本程序

批處理文件:顧名思義就是進行批量的處理。批處理文件是擴展名爲·bat 或·cmd的文本文件,包含一條或多條命令,由DOS或Windows系統內嵌的命令解釋器來解釋運行。

批處理文件是無格式的文本文件。在命令提示下鍵入批處理文件的名稱,或者雙擊該批處理文件,系統就會調用Cmd.exe按照該文件中各個命令出現的順序來逐個運行它們。

@echo off
武漢站
F:  
cd F:\study\python
start python mapIt.py

執行該.bat文件,將會跳轉到查詢“武漢站”的頁面。刪去“武漢站”幾個字,將會跳轉到查詢剪貼板內容的界面。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章