2011-06-27 28 views
-1

我已經完成了頭一次編程第3章中概述的程序。 基本上,程序搜索一個網站,並在該頁面上存儲價格。然後根據用戶選擇哪個選項,某個消息將被髮送到用戶的Twitter帳戶。從本書的網站頭一次編程:示例程序中的錯誤

的源代碼:http://headfirstlabs.com/books/hfprog/chapter03/page108.py

當我運行我的程序,並運行從本書的網站的源代碼,我得到了同樣的錯誤。

以下是錯誤:

Traceback (most recent call last): 
    File "C:\Users\Krysten\Desktop\Ch3.py", line 28, in <module> 
    send_to_twitter(get_price()) 
    File "C:\Users\Krysten\Desktop\Ch3.py", line 14, in send_to_twitter 
    resp = urllib.request.urlopen("http://twitter.com/statuses/update.json", params) 
    File "C:\Python31\lib\urllib\request.py", line 121, in urlopen 
    return _opener.open(url, data, timeout) 
    File "C:\Python31\lib\urllib\request.py", line 356, in open 
    response = meth(req, response) 
    File "C:\Python31\lib\urllib\request.py", line 468, in http_response 
    'http', request, response, code, msg, hdrs) 
    File "C:\Python31\lib\urllib\request.py", line 394, in error 
    return self._call_chain(*args) 
    File "C:\Python31\lib\urllib\request.py", line 328, in _call_chain 
    result = func(*args) 
    File "C:\Python31\lib\urllib\request.py", line 476, in http_error_default 
    raise HTTPError(req.full_url, code, msg, hdrs, fp) 
urllib.error.HTTPError: HTTP Error 401: Unauthorized 

是誤差所引起,因爲書是有些過時和Twitter已經以不同的方式來訪問?

+0

好吧,閱讀錯誤。 「未授權」。你是否在示例中更改了實際存在的憑據? –

+0

在我的程序中,我使用了我的Twitter帳戶用戶名和密碼 – kachilous

回答

2

在大多數Twitter API中,基本身份驗證已被棄用。使用OAuth API。

+0

OAuth API是否有自己的訪問Twitter的方式? – kachilous

+0

@kachilous OAuth是可以授予用戶訪問權限的常用規範。 Twitter將其用於自己的API訪問認證。 – mattn