如何让git使用socks代理进行http传输?
我成功地使用GIT_PROXY_COMMAND配置git以使用socks代理进行GIT传输.
此外,我已经配置我的.curlrc文件来定义socks代理,我可以直接用curl命令获取信息,如:
curl http://git.kernel.org/pub/scm/git/git.git/info/refs?service=git-upload-pack
Run Code Online (Sandbox Code Playgroud)
但是如何使用带git的socks代理来使用http传输协议检索数据,如:
git clone http://git.kernel.org/pub/scm/git
Run Code Online (Sandbox Code Playgroud) 我在我的Python脚本中使用了很棒的Requests库:
import requests
r = requests.get("some-site.com")
print r.text
Run Code Online (Sandbox Code Playgroud)
我想用socks代理.但是Requests现在只支持HTTP代理.
我怎样才能做到这一点?
如何使用带urllib2的SOCKS 4/5代理下载网页?
我有以下情况:
var options = {
protocols_whitelist : [ "websocket", "xhr-streaming", "xdr-streaming", "xhr-polling", "xdr-polling", "iframe-htmlfile", "iframe-eventsource", "iframe-xhr-polling" ],
debug : false
};
var socket = new SockJS("/mmyurl/",undefined,options);
var stompClient = Stomp.over(socket);
stompClient.connect({
company : "XXXXX"
}, function(frame) {
stompClient.subscribe('/topic/mytopic', function(message){
var myitem = JSON.parse(message.body);
});
Run Code Online (Sandbox Code Playgroud)
一切正常,问题是在javascript控制台上充满了这样的调试消息:
<<< MESSAGE
content-type:application/json;charset=UTF-8
subscription:sub-1
message-id:o6g660dt-113
destination:/topic/mytopic
content-length:411
Run Code Online (Sandbox Code Playgroud)
我想禁用这些消息.
我试图改变一些选项,并试图简单地注册:
var socket = new SockJS("/mmyurl/");
Run Code Online (Sandbox Code Playgroud)
但它不起作用.
有没有办法禁用调试消息?
任何帮助表示赞赏
我正在尝试使用依赖于Python请求的包与我的Python 2.7 shell中的API进行交互.事情是我的网络(大学图书馆)阻止了远程地址.
所以说到API,我会做以下事情:
~$ ssh -D 8080 name@myserver.com
Run Code Online (Sandbox Code Playgroud)
然后,在新的终端,在本地计算机:
~$ export http_proxy=socks5://127.0.0.1:8080 https_proxy=socks5://127.0.0.1:8080
Run Code Online (Sandbox Code Playgroud)
然后我在Python控制台中运行该程序但失败了:
~$ python
>>> import myscript
>>> id = '1213'
>>> token = 'jd87jd9'
>>> connect(id,token)
File "/home/username/.virtualenvs/venv/local/lib/python2.7/site-packages/requests/sessions.py", line 518, in post
return self.request('POST', url, data=data, json=json, **kwargs)
File "/home/username/.virtualenvs/venv/local/lib/python2.7/site-packages/requests/sessions.py", line 475, in request
resp = self.send(prep, **send_kwargs)
File "/home/username/.virtualenvs/venv/local/lib/python2.7/site-packages/requests/sessions.py", line 585, in send
r = adapter.send(request, **kwargs)
File "/home/username/.virtualenvs/venv/local/lib/python2.7/site-packages/requests/adapters.py", line 370, in send
conn = self.get_connection(request.url, proxies)
File "/home/username/.virtualenvs/venv/local/lib/python2.7/site-packages/requests/adapters.py", line 273, in get_connection
proxy_manager = …Run Code Online (Sandbox Code Playgroud) 据我所知,SOCKS代理只在TCP级别建立连接,而HTTP代理在HTTP级别解释流量.因此,SOCKS代理可以用于任何类型的协议,而HTTP代理只能处理HTTP流量.但是为什么像Squid这样的HTTP代理可以支持IRC,FTP等协议?当我们使用HTTP代理进行IRC或FTP连接时,具体会发生什么?通过HTTP协议将包发送到代理时,是否有任何元数据添加到包中?
我是Tor的新手,我觉得应该考虑多个Tors.我在这里提到的多个实例不仅是多个实例,而且还为每个实例使用不同的代理端口,就像这里所做的那样 http://www.howtoforge.com/ultimate-security-proxy-with-tor)
我正在努力开始使用4个Tors.但是,本教程仅适用于Arch Linux,而我使用的是无头EC2 ubuntu 64位.通过Arch和Ubuntu之间的差异真的很痛苦.在这里,我想知道是否有人可以提供一些帮助,以明确地实现我的想法.
四个Tors同时运行,每个都有一个单独的端口,privoxy或polipo或一旦它工作正常.喜欢:8118 < - Privoxy < - TOR < - 9050 8129 < - Privoxy < - TOR < - 9150 8230 < - Privoxy < - TOR < - 9250 8321 < - Privoxy < - TOR < - 9350
这样,如果我尝试返回127.0.0.1:8118,8129,8230和8321的ip,它们应该返回四个不同的ips,这表示有四个不同的Tors同时运行.然后,几分钟后,再次检查,他们四个应该再次有一个新的ips.
我知道我的简单"梦想"可以在很多方面实现,但是......我不仅是Tor的新手,而且也是bash和python的新手...这就是为什么我来到这里看看你们中的一些人是否可以点亮我起来
这些链接可能很有用:
http://blog.databigbang.com/distributed-scraping-with-multiple-tor-circuits/ https://www.torservers.net/wiki/setup/server#multiple_tor_processes Best,
顺便说一句,如果我跑,
$ ps -A | grep 'tor'
我有几个实例,但有"?" 在tty栏下,这意味着什么,因为我知道tty意味着终端?
有没有办法使用socks代理WebClient?特别DownloadString是它提供的方法?
我不想使用任何第三方的东西,如privoxy,freecap,我不能使用像Chilkat那样的商业库.我尝试使用来自http://www.mentalis.org/的东西,实际上我使用了它们的WebRequest实现,但它们似乎没有类似于WebClient的东西.
普通代理(例如72.41.132.22:3128)与cURL配合良好,但是当我使用带有用户名/密码的SOCKS 5代理时,它只是在页面上给我"[1".
有没有办法使用SOCKY 5代理与cURL?
$proxy = "cagsan:jw22wdw@108.61.25.223:34792";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_PROXY, $proxy);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_HEADER, 1);
$curl_scraped_page = curl_exec($ch);
curl_close($ch);
Run Code Online (Sandbox Code Playgroud) 我在为chrome驱动程序设置socks代理时遇到了麻烦
Proxy proxy = new Proxy();
proxy.setProxyType(Proxy.ProxyType.MANUAL);
proxy.setAutodetect(false);
proxy.setSocksProxy(ProxyHelper.PROXY_HOST + ":" + ProxyHelper.PROXY_PORT);
DesiredCapabilities capabilities = DesiredCapabilities.chrome();
capabilities.setCapability(CapabilityType.PROXY, proxy);
WebDriver chromeDriver = new ChromeDriver(capabilities);
Run Code Online (Sandbox Code Playgroud)
此配置提供:
Exception in thread "main" org.openqa.selenium.WebDriverException: unknown error: cannot parse capability: proxy from unknown error: proxyType is 'manual' but no manual proxy capabilities were found
Run Code Online (Sandbox Code Playgroud)
我认为它希望我填写http,ftp和ssl代理.但是,如果我填补他们; 错误没有提高,但我的代理也不能正常工作,因为它试图像http代理而不是袜子代理一样使用它.
我能做什么?