标签: url-parsing

将URL参数转换为JavaScript对象

我有一个像这样的字符串:

abc=foo&def=%5Basf%5D&xyz=5

如何将其转换为像这样的JavaScript对象?

{
  abc: 'foo',
  def: '[asf]',
  xyz: 5
}
Run Code Online (Sandbox Code Playgroud)

javascript url jquery url-parsing url-parameters

188
推荐指数
18
解决办法
16万
查看次数

如何从URL字符串中获取参数?

我有一个HTML表单字段$_POST["url"],其中包含一些URL字符串作为值.示例值为:

https://example.com/test/1234?email=xyz@test.com
https://example.com/test/1234?basic=2&email=xyz2@test.com
https://example.com/test/1234?email=xyz3@test.com
https://example.com/test/1234?email=xyz4@test.com&testin=123
https://example.com/test/the-page-here/1234?someurl=key&email=xyz5@test.com

等等

如何email从这些URL /值中仅获取参数?

请注意,我没有从浏览器地址栏中获取这些字符串.

php url-parsing

180
推荐指数
6
解决办法
49万
查看次数

更改网址参数

我有这个网址:

site.fwx?position=1&archiveid=5000&columns=5&rows=20&sorting=ModifiedTimeAsc
Run Code Online (Sandbox Code Playgroud)

我需要的是能够将'rows'url param值更改为我指定的内容,比方说10.如果'rows'不存在,我需要将它添加到url的末尾并添加价值我已经指定(10).

javascript url url-parsing url-parameters query-string

173
推荐指数
14
解决办法
32万
查看次数

在javascript中创建一个新的Location对象

是否可以在javascript中创建一个新的Location对象?我有一个url作为字符串,我想利用javascript已经提供的访问它的不同部分.

这是我正在谈论的一个例子(我知道这不起作用):

var url = new window.location("http://www.example.com/some/path?name=value#anchor");
var protocol = url.protocol;
var hash = url.hash;
// etc etc
Run Code Online (Sandbox Code Playgroud)

这样的事情是可能的,还是我自己必须自己创建这个对象?

javascript url-parsing

67
推荐指数
3
解决办法
2万
查看次数

$ _SERVER ['REQUEST_SCHEME']可靠吗?

我最近正在寻找一种方法来正确地确定协议,在该协议下,url请求被提供给服务器.

我看过parse_url()并通过$_SERVER超全局变量,发现了这个:

<?php
header('Content-Type: text/plain');

print_r($_SERVER);
?>
Run Code Online (Sandbox Code Playgroud)

输出:

[REQUEST_SCHEME] => http

但是,我无法在php.net或Google 上找到它.虽然,我能够找到这个问题.问题1:如果$_SERVER['REQUEST_SCHEME']没有记录,那么它可能不可靠,或者它可以被信任?

VC9 PHP 5.4.14 TS在windows下用于开发.但我的生产是在ubuntu下.问题2:这个属性在ubuntu linux下也可用吗?

php url-parsing

35
推荐指数
5
解决办法
4万
查看次数

如何获取URL中的最后一个路径?

我想获取URL中的最后一个路径段:

  • http://blabla/bla/wce/news.php 要么
  • http://blabla/blablabla/dut2a/news.php

例如,在这两个URL中,我想获得路径段:'wce'和'dut2a'.

我尝试使用$_SERVER['REQUEST_URI'],但我得到了整个URL路径.

php url-parsing

27
推荐指数
4
解决办法
8万
查看次数

如何从Python的YouTube链接中提取视频ID?

我知道这可以使用PHP parse_urlparse_str函数轻松完成:

$subject = "http://www.youtube.com/watch?v=z_AbfPXTKms&NR=1";
$url = parse_url($subject);
parse_str($url['query'], $query);
var_dump($query);
Run Code Online (Sandbox Code Playgroud)

但是如何使用Python实现这一目标?我可以做urlparse但接下来呢?

python regex parsing url-parsing

21
推荐指数
5
解决办法
1万
查看次数

从页面上的相对URL重建绝对URL

给定页面的绝对URL以及在该页面中找到的相对链接,是否有办法a)明确重建或b)尽力重建相对链接的绝对URL?

在我的情况下,我正在使用漂亮的汤从一个给定的URL读取一个html文件,删除所有img标记源,并尝试构建页面图像的绝对URL列表.

到目前为止我的Python函数看起来像:

function get_image_url(page_url,image_src):

    from urlparse import urlparse
    # parsed = urlparse('http://user:pass@NetLoc:80/path;parameters?query=argument#fragment')
    parsed = urlparse(page_url)
    url_base = parsed.netloc
    url_path = parsed.path

    if src.find('http') == 0:
        # It's an absolute URL, do nothing.
        pass
    elif src.find('/') == 0:
        # If it's a root URL, append it to the base URL:
        src = 'http://' + url_base + src
    else:
        # If it's a relative URL, ?
Run Code Online (Sandbox Code Playgroud)

注意:不需要Python答案,只需要逻辑.

html python url-parsing

21
推荐指数
2
解决办法
1万
查看次数

如何在必要时将"http://"协议添加到URL中?

我需要解析一个URL.我目前正在使用urlparse.urlparse()和urlparse.urlsplit().

问题是,当不存在该方案时,我无法从URL获取"netloc"(主机).我的意思是,如果我有以下网址:

www.amazon.com/Programming-Python-Mark-Lutz/dp/0596158106/ref=sr_1_1?ie=UTF8&qid=1308060974&sr=8-1

我无法获得netloc:www.amazon.com

根据python文档:

遵循RFC 1808中的语法规范,只有在'//'正确引入的情况下,urlparse才会识别netloc.否则,输入被假定为相对URL,因此以路径组件开始.

所以,这是故意的.但是,我仍然不知道如何从该URL获取netloc.

我想我可以检查该方案是否存在,如果不存在,则添加它,然后解析它.但是这个解决方案看起来并不是很好.

你有更好的主意吗?

编辑: 谢谢你的所有答案.但是,我不能做Corey和其他人提出的"startwith"事情.如果我得到一个其他协议/方案的URL我会搞砸了.看到:

如果我得到这个网址:

ftp://something.com
Run Code Online (Sandbox Code Playgroud)

使用提议的代码,我会在开头添加"http://"并将其弄乱.

我发现的解决方案

if not urlparse.urlparse(url).scheme:
   url = "http://"+url
return urlparse.urlparse(url)
Run Code Online (Sandbox Code Playgroud)

需要注意的事项:

我先做一些验证,如果没有给出方案,我认为它是http://

python url url-parsing urlparse

19
推荐指数
4
解决办法
1万
查看次数

为什么 /a 有效时 / 是无效路径?

我\xe2\x80\x99m 试图理解为什么某些 HTML 属性未通过 W3C 验证。我在真实的代码库中遇到了这个问题,但这里\xe2\x80\x99s是一个最小的复制:

\n
<!DOCTYPE html><html lang="en"><head><title>a</title></head><body>\n\n<img alt="1" src="\xe2\xad\x90">\n<img alt="2" src="/\xe2\xad\x90">\n<img alt="3" src="/a\xe2\xad\x90">\n<img alt="4" src="/a/\xe2\xad\x90">\n<img alt="5" src="">\n<img alt="6" src="/"> <!-- Only this is invalid. -->\n<img alt="7" src="/a">\n<img alt="8" src="/a/">\n\n</body></html>\n
Run Code Online (Sandbox Code Playgroud)\n

W3C 验证器仅报告一个错误,影响第六张图像:

\n
\n
    \n
  1. 错误:元素/属性值错误:路径段中存在非法字符:不允许。srcimg?

    \n
    <img alt="6" src="/">\n
    Run Code Online (Sandbox Code Playgroud)\n
  2. \n
\n
\n

为什么只有这个有问题,其他的没有?\xe2\x80\x99 有什么不同?

\n

html url-parsing w3c-validation emoji

14
推荐指数
1
解决办法
711
查看次数