Tôi đang cố gắng để xóa dữ liệu trên các trang từ API bằng cách sử dụng hàm getURL của gói RCurl trong R. Vấn đề của tôi là tôi không thể sao chép phản hồi Tôi nhận được khi tôi mở URL trong Chrome khi tôi thực hiện yêu cầu bằng R. Về cơ bản, khi tôi mở trang API (url bên dưới) trong Chrome, nó hoạt động tốt nhưng nếu tôi yêu cầu bằng cách sử dụng getURL trong R (hoặc sử dụng chế độ ẩn danh trong Chrome) Tôi nhận được phản hồi '500 Lỗi Máy chủ Nội bộ' và không phải là JSON đẹp mà tôi đang tìm kiếm.'RCurl' [R] gói lỗi trang web getURL khi cạo API
URL/API trong câu hỏi: http://www.bluenile.com/api/public/loose-diamond/diamond-details/panel?country=USA¤cy=USD&language=en-us&productSet=BN&sku=LD04077082
Sau đây là tôi (thất bại) yêu cầu trong [R].
test2 <- fromJSON(getURL("http://www.bluenile.com/api/public/loose-diamond/diamond-details/panel?country=USA¤cy=USD&language=en-us&productSet=BN&sku=LD04077082", ssl.verifypeer = FALSE, useragent = "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/37.0.2062.124 Safari/537.36"))
Nghiên cứu của tôi cho đến nay Trước tiên tôi nhìn câu hỏi trước đây trên stack và thêm vào useragent tôi để yêu cầu (không giải quyết vấn đề nhưng vẫn có thể cần thiết): ViralHeat API issues with getURL() command in RCurl package
Tiếp theo tôi nhìn bài hữu ích này mà dẫn lý do của tôi: R Disparity between browser and GET/getURL
Ý tưởng của tôi về các giải pháp Đây không phải là lĩnh vực chuyên môn của tôi nhưng tôi đoán là yêu cầu thiếu cookie cần thiết để hoàn thành yêu cầu (vì vậy tại sao nó không hoạt động trong trình duyệt của tôi ở chế độ ẩn danh). Tôi đã so sánh các yêu cầu và phản hồi từ yêu cầu thành công để yêu cầu không thành công:
thành công yêu cầu:
yêu cầu không thành công:
Bất cứ ai có bất cứ ý tưởng? Tôi có nên thử sử dụng gói RSelenium
gói đã được đề xuất bởi MrFlick trong bài đăng thứ hai tôi đã thực hiện.
ảnh vui nhộn. Tôi đã cố gắng làm việc với một cookiejar nhưng điều đó đã không biến bất cứ điều gì lên. Trước tiên, bạn phải truy cập trang đầu tiên của họ. Tài giỏi. Làm thế nào bạn biết đây là trường hợp? – stanekam
Thực tế là chrome incognito đã không dẫn tôi đến xem trang đích và những gì đã được thiết lập ở đó. – jdharrison
Bravo, hoạt động hoàn hảo! Giải thích vấn đề và hiểu biết ấn tượng. – Tom