- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
Python 有一个 urljoin 函数,它接受两个 URL 并智能地连接它们。有没有在c++中提供类似功能的库?
urljoin 文档:http://docs.python.org/library/urlparse.html
和 python 示例:
>>> urljoin('http://www.cwi.nl/%7Eguido/Python.html', 'FAQ.html')
'http://www.cwi.nl/%7Eguido/FAQ.html'
最佳答案
我想通了。我使用了库 uriparser:http://uriparser.sourceforge.net/并匆匆实现了如下功能。它执行稀疏错误检查并可能泄漏内存。
std::string urljoin(std::string &base, std::string &relative)
{
UriParserStateA state;
UriUriA uriOne;
UriUriA uriTwo;
state.uri = &uriOne;
if (uriParseUriA(&state, base.c_str()) != URI_SUCCESS)
{
return "";
}
state.uri = &uriTwo;
if (uriParseUriA(&state, relative.c_str()) != URI_SUCCESS)
{
uriFreeUriMembersA(&uriTwo);
return "";
}
UriUriA result;
if (uriAddBaseUriA(&result, &uriTwo, &uriOne) != URI_SUCCESS)
{
uriFreeUriMembersA(&result);
return "";
}
uriFreeUriMembersA(&uriOne);
uriFreeUriMembersA(&uriTwo);
int charsRequired;
uriToStringCharsRequiredA(&result, &charsRequired);
charsRequired++;
char *buf = (char*) malloc(charsRequired * sizeof(char)); if (uriToStringA(buf, &result, charsRequired, NULL) != URI_SUCCESS)
return "";
uriFreeUriMembersA(&result);
std::string ret(buf);
free(buf);
return ret;
}
关于C++ urljoin 等价物,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2285409/
有些网站像http://www.gilacountyaz.gov/government/assessor/index.php有一堆应该是绝对路径的内部链接,但没有前导斜杠。当使用 urlparse.u
Python 有一个 urljoin 函数,它接受两个 URL 并智能地连接它们。有没有在c++中提供类似功能的库? urljoin 文档:http://docs.python.org/library
在从相对目录构造绝对 URL 时,是否有一种方法可以解决“无效”父目录的问题,还是我应该只使用 .replace()? >>> from urlparse import urljoin >>> url
我正在尝试从不同的部分形成 URL,但无法理解此方法的行为。例如: Python 3.x from urllib.parse import urljoin >>> urljoin('some', 't
我有这两个网址: absolute_url = 'https://ciechgroup.com/en/relacje-inwestorskie/reports/current-reports' rel
Python 有一个 urljoin 函数,它接受两个 URL 并智能地连接它们。在 AS3 中是否有提供类似功能的库? urljoin 文档:http://docs.python.org/libra
请问,这是怎么回事? >>> import urllib.parse >>> base = 'http://example.com' >>> urllib.parse.urljoin(base, 'a
我得到: exceptions.TypeError: not all arguments converted during string formatting 来自此: cursor.execute(
我有一个亲戚 URL 列表,我需要完整的 URL。我正在使用 scrapy。 我可以得到一个 URL urljoin(response.url,url_list[0]) 但我想将该函数应用到整个列表,
假设我有以下网址: url = https://www.example.com/thing1/thing2/thing3 next_thing = thing4 我想要以下网址: https://ww
从基本 URL 和潜在相对路径构建 URL 的 PHP 等价物是什么? Python 提供 urlparse.urljoin但在 PHP 中似乎没有任何标准实现。 我发现最接近的是人们建议使用 par
我正在尝试在 Scrapy 蜘蛛中使用 urlparse.urljoin 来编译要抓取的 url 列表。目前,我的蜘蛛没有返回任何内容,但没有抛出任何错误。所以我试图检查我是否正确编译了网址。 我的尝
我已经使用 pip 安装了 scrapy,并尝试了 scrapy 文档中的示例。 我得到了错误cannot import name xmlrpc_client 在调查了一个 stachoverflow
我是一名优秀的程序员,十分优秀!