"Hard Coded" 用户代理足以让程序在多台计算机上运行吗?
Is a "Hard Coded" user agent enough for a program to work on multiple computers?
我正在使用 idHttp 登录一些网站并下载一些文件,我想知道我的程序将在多台计算机上 运行使用不同的 windows 和软件,例如:
idHttp.userAgent := 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.106 Safari/537.36 OPR/38.0.2220.41';
够了吗?或者我是否必须以某种方式从某处提取该计算机的正确用户代理信息并发送?我的意思是,硬编码 用户代理是可行的方法,足以使程序在多台计算机上兼容吗?
login to some sites and download a few files
由此看来,您很可能正在处理 cookie。这是一个区别,即搜索引擎想要索引互联网并或多或少地请求任何东西,而无需凭据在任何地方登录。
my program is going to be run on multiple computers with different windows and softwares
这与您的程序无关。
'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.106 Safari/537.36 OPR/38.0.2220.41'
通过这种方式,服务器希望您能够像您命名的 Internet 浏览器一样运行。你显然不会。
在你的情况下,你没有交互式互联网浏览器 - 你有一个自动机器人,那些应该有一个适当的用户代理。如果您阅读 https://en.wikipedia.org/wiki/User_agent#Format_for_automated_agents_.28bots.29,您会发现像这样的用户代理更适合您的程序:网站所有者可以识别您(这既有优点也有缺点)并且还可以在 URI 下查找更多关于您的用途的信息你给他们:
MyProgram/1.0 (+http://myprogram.org/what_i_am_doing.html)
我正在使用 idHttp 登录一些网站并下载一些文件,我想知道我的程序将在多台计算机上 运行使用不同的 windows 和软件,例如:
idHttp.userAgent := 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.106 Safari/537.36 OPR/38.0.2220.41';
够了吗?或者我是否必须以某种方式从某处提取该计算机的正确用户代理信息并发送?我的意思是,硬编码 用户代理是可行的方法,足以使程序在多台计算机上兼容吗?
login to some sites and download a few files
由此看来,您很可能正在处理 cookie。这是一个区别,即搜索引擎想要索引互联网并或多或少地请求任何东西,而无需凭据在任何地方登录。
my program is going to be run on multiple computers with different windows and softwares
这与您的程序无关。
'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.106 Safari/537.36 OPR/38.0.2220.41'
通过这种方式,服务器希望您能够像您命名的 Internet 浏览器一样运行。你显然不会。
在你的情况下,你没有交互式互联网浏览器 - 你有一个自动机器人,那些应该有一个适当的用户代理。如果您阅读 https://en.wikipedia.org/wiki/User_agent#Format_for_automated_agents_.28bots.29,您会发现像这样的用户代理更适合您的程序:网站所有者可以识别您(这既有优点也有缺点)并且还可以在 URI 下查找更多关于您的用途的信息你给他们:
MyProgram/1.0 (+http://myprogram.org/what_i_am_doing.html)