2010-08-02 38 views
19

Tôi đang cố gắng sử dụng R để lấy một số dữ liệu web yêu cầu xác thực OAuth. Tìm kiếm trên CRAN và RSeek.org để biết thông tin về OAuth + R không cung cấp gì. Bất kỳ mẹo nào để truy cập RESTful APIs bằng R bằng OAuth?Truy cập OAuth cho R

Tôi đang xem xét sử dụng một số Python/Perl/Ruby để lấy dữ liệu, lưu nó vào một tệp văn bản, sau đó làm việc với R. Tôi muốn ở lại hoàn toàn trong R, nhưng có vẻ như OAuth là một rào cản.

+2

Bạn cũng có thể xem xét sử dụng Python để vượt qua OAuth, sau đó gọi R từ Python qua RPy2 hoặc PypeR – DrewConway

+0

Hmmm .. thế nào về gọi Python từ R? Vì tôi muốn thực hiện hầu hết phân tích của mình trong R, có vẻ như chỉ có thể thu thập các bit truy xuất dữ liệu bằng Python sau đó trả về một đối tượng thuộc loại nào đó là R. –

+0

Đây có phải là dữ liệu twitter không? –

Trả lời

2

Một tùy chọn mà tôi gặp phải được gọi là OAuth Proxy và nó trượt tiêu đề OAuth bằng cách sử dụng proxy. Đây là một kludge thú vị.

1

Một có thể, giả sử bạn có quyền truy cập vào các chức năng cần thiết trong crypto R, bạn có thể thực hiện OAuth hoàn toàn như các yêu cầu HTTP không nơi nương tựa lib, vv

Trong khi viết một lib oauth hoàn toàn có thể đòi hỏi quá nhiều, nếu bạn chỉ cần một cách nhanh chóng và dơ bẩn để kéo dữ liệu xuống, nó không quá khó để tạo thủ công một vài hàm bạn cần để hoàn thành một yêu cầu oauth.

Ngoài ra, trong khi R có thể không có lib oauth, hầu hết phần khó của oauth là trong tương tác giữa các máy chủ, không phải trong việc tạo mã thông báo/yêu cầu, vì vậy bạn có thể xem triển khai và cổng của ngôn ngữ khác logic bắt buộc đối với R. Tôi sẽ đề xuất xem xét một lib đơn giản từ http://oauth.net/code/ cho điểm bắt đầu.

1

Cũng có thể thực hiện việc này với thư viện RCurl. Điều chính là bạn phân tích cú pháp access_tokens và xác minh ủy quyền một cách chính xác. Nhưng tôi đã quản lý để kéo rất nhiều dữ liệu ra khỏi facebook với R thông qua getURL.

Các vấn đề liên quan