如何在代理后面的Julia中发出HTTP请求?

时间:2018-09-10 19:37:46

标签: http proxy request julia

Julia noob,然后尝试一些简单的练习。

我正在尝试运行以下代码:

using HTTP
url = "https://finance.yahoo.com/quote/googl"
r = HTTP.request("GET", url)

并收到超时错误。

一些评论:

  • 我在公司代理人身后。我已经设置了http_proxy和https_proxy(以及它们的大写字母),并且使.gitconfig文件知道了这些设置。
  • 使用Python urllib2的等效代码没有问题。
  • 尝试使用该网址的http版本-祝您好运。
  • 尝试了POST而不是GET-仍然没有运气。
  • 详细选项未显示任何其他信息。

这是堆栈跟踪的顶部:

  

错误:LoadError:IOError:连接:连接超时(ETIMEDOUT)
  Stacktrace:
   在./event.jl:196的1 try_yieldto(:: typeof(Base.ensure_rescheduled),:: Base.RefValue {Task})
   [2] wait。)at./event.jl:255
   [3]在./event.jl:46的wait(:: Condition)
   [4] stream.wait(:: Sockets.TCPSocket,:: Condition)位于./stream.jl:47
   [5] ./stream.jl:263处的wait_connected(:: Sockets.TCPSocket)
   [6]在/buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.0/Sockets/src/Sockets连接。   jl:444 [inlined]
   [7]在/ buildworker / worker / package_linux64 / build / usr / share / julia / stdlib上的connect(:: Sockets.IPv4,:: UInt64)   /v1.0/Sockets/src/Sockets.jl:428
   [8]#getconnection#14(:: Bool,:: Int64,:: Base.Iterators.Pairs {Symbol,Union {Nothing,Bool},Tuple {Symbol,Sy   mbol},NamedTuple {(:: require_ssl_verification,:iofunction),Tuple {Bool,Nothing}}},:: Function,:: Type {Socket   s.TCPSocket},:: SubString {String},:: String)位于/home/T2213331/.julia/packages/HTTP/nUK4f/src/ConnectionPo   ol.jl:548

对于每个this SO question,我已经确认ENV["http_proxy"]ENV["https_proxy"]均已正确设置。

1 个答案:

答案 0 :(得分:1)

这似乎可行

HTTP.get("https://finance.yahoo.com/quote/googl", proxy="http://123.123.123.123:8888")

当然,您需要提供正确的代理IP和端口。