全方位範例

概論

我們製作了 AdSense Host API 全方位範例,來說明發佈商申請流程中從連結帳戶開始到產生廣告程式碼的每個步驟。

申請程序分為 4 個步驟:

  1. 主機呼叫 associationsessions.start 來請求新的連結工作階段。
  2. 主機將發佈商重新導向至所傳回連結工作階段中提供的 AdSense 網站網址,然後由發佈商在該處填寫表單。
  3. 發佈商重新導向回到主機的網站,並取得一個包含在 HTTP 請求中的權杖參數。
  4. 主機呼叫 associationsessions.verify 來驗證該權杖。如果連結建立成功,回應會包含發佈商帳戶編號,而主機應該會將這個編號儲存在本機上,以便在進行與此發佈商相關的所有後續 API 呼叫時使用。

擷取發佈商的帳戶編號後,主機需要再採取兩個步驟:

  1. 呼叫 accounts.adunits.insert,在發佈商帳戶中新建廣告單元。
  2. 呼叫 accounts.adunits.getAdCode,以產生新廣告單元的廣告程式碼。

安裝全方位範例

  1. 先下載並安裝最新版的 Python 專用 Google API 用戶端程式庫。您可以在專案網頁的下載區段中找到一些可下載的套件,但建議您使用 pip 進行下載及安裝。
  2. 下載並安裝 Django,務必使用 1.5.x 版 (其他版本可能會發生相容性問題)。我們同樣建議您使用 pip 進行這項程序。
  3. 下載並安裝全方位範例
  4. git clone https://code.google.com/p/adsense-apis-showcase
  5. 修改 samplehost/settings.py 來加入資料庫資訊,並設定引擎及名稱欄位。以下是 sqlite3 的範例設定:
  6. DATABASES = {
        'default': {
            'ENGINE': 'django.db.backends.sqlite3',
            'NAME': '/path/to/your_db.db',
            'USER': '',
            'PASSWORD': '',
            'HOST': '',
            'PORT': '',
        }
    }
    
  7. 在同一個檔案中,將 TEMPLATE_DIRS 設為您範本檔案目錄的絕對路徑,也就是在您所安裝全方位範例中的 templates/ 子目錄。
  8. Django 專案設定完畢後,您必須初始化資料庫。請在所安裝全方位範例安裝的根執行以下命令:
  9. python manage.py syncdb
  10. 接著,將開發人員憑證加進 client_secrets.json。建立網路應用程式用戶端編號後,您就能在 API 主控台中找到這些憑證。
  11. 最後,對 API 進行初始驗證以建立 adsensehost.dat (這會儲存您從 Google 驗證服務取回的憑證資料),但別忘了使用 AdSense Host 帳戶進行這項程序。請在所安裝全方位範例安裝的根執行以下命令:
    python api_utils.py

以下影片說明整個範例安裝程序。

執行全方位範例

  1. 啟動本機 Django 伺服器以執行此應用程式;請在所安裝全方位範例的根執行以下命令:
    python manage.py runserver
  2. 請務必複製服務網址,這個網址通常是 http://localhost:8000 (或 http://127.0.0.1:8000,如果使用的是 IPv4 位址),但可能會因設定而有所不同。
  3. 在瀏覽器中開啟服務網址,然後按一下唯一可用的網誌,這樣就會看到不含廣告的範例網誌。您現在扮演著擁有網誌的發佈商,想要利用此網誌營利。
  4. 開啟該網誌的管理網頁,這樣就會看到 [透過 AdSense 將您的網誌化為財源] 連結。點擊該連結。
  5. 系統會將您重新導向到 AdSense 申請網頁,您可以在此選擇建立新帳戶或使用現有帳戶登入。
  6. 完成所有申請步驟後,系統會將您重新導向到所安裝全方位範例中的回呼網址 (http://localhost:8000/callback 為預設值)。
  7. 該範例會驗證收到的權杖、建立廣告單元、產生其廣告程式碼,並將您重新導向至現在會在頂端顯示廣告的網誌。如果您前往管理網頁,就會看到已新建 (或連結) 發佈商帳戶的發佈商編號。

以下影片說明如何執行全方位範例。

傳送您對下列選項的寶貴意見...

這個網頁
AdSense Host API
AdSense Host API