标签: urlparse

如何用 urlparse 中的新值替换查询?

所以我有一个数据如下:

 item = '//s780.scene7.com/is/image/forever/301596014_001?hei=98&wid=98'
Run Code Online (Sandbox Code Playgroud)

使用 urlparse 模块。我怎样才能用新的大小替换上面的数据,使它看起来像这样:

  item = '//s780.scene7.com/is/image/forever/301596014_001?hei=360&wid=360'
Run Code Online (Sandbox Code Playgroud)

python urlparse scene7

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

urljoin当绝对路径没有前导斜杠时

http://www.gilacountyaz.gov/government/assessor/index.php这样的网站有一堆内部链接应该是绝对路径,但没有前导斜杠.使用urlparse.urljoin结果解析它们时如下:

>>> import urlparse
>>> a = "http://www.gilacountyaz.gov/government/assessor/index.php"
>>> b = "government/assessor/address_change.php"
>>> urlparse.urljoin(a, b)
'http://www.gilacountyaz.gov/government/assessor/government/assessor/address_change.php'
Run Code Online (Sandbox Code Playgroud)

这会导致Web爬网程序没有意识到它已经访问过页面,并且可能存在无限循环.Firefox和Chrome能够发现问题并正确解析

http://www.gilacountyaz.gov/government/assessor/address_change.php
Run Code Online (Sandbox Code Playgroud)

有没有办法在Python中做同样的事情?请注意,假设始终使用前导斜杠不起作用,因为我们可能正在处理真正的相对路径.

python url url-parsing urlparse

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

Python 3:为什么要使用 urlparse/urlsplit

我不太确定这些模块的用途。我知道他们将各自的 url 拆分为其组件,但是为什么这会有用,或者何时使用 urlparse 的示例是什么?

urlparse python-3.4

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

如何从database_url解析mysql数据库名称

DATABASE_URL- MYSQL://用户名:password @ host:port/database_name

错误:database_name没有属性.

if 'DATABASE_URL' in os.environ:
  url = urlparse(os.getenv['DATABASE_URL'])
 g['db'] = mysql.connector.connect(user=url.username,password=url.password, host=url.hostname ,port=url.port,path=url.path[1:])
Run Code Online (Sandbox Code Playgroud)

python mysql database-connection urlparse

2
推荐指数
2
解决办法
3343
查看次数

解析 Azure 函数中的 URL

我正在学习如何使用 Azure 函数,对它还很陌生。我有一个用 NodeJs 编写的 httptrigger Azure 函数。我正在考虑如何从 httptrigger 函数 URL 解析数据并在我的代码中使用它的逻辑。想对此提出一些建议吗?

简单来说,

  1. 我想知道如何将字符串参数传递给函数 URL。
  2. 然后解析 URL 中的字符串并在我的代码逻辑中使用它。

azure urlparse node.js azure-functions

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

python 2.7中的等效urllib.parse.unquote()

我在 python 2.7 中导入 urlparse而不是urllib.parse但得到AttributeError: 'function' object has no attribute 'unquote'

File "./URLDefenseDecode2.py", line 40, in decodev2
    htmlencodedurl = urlparse.unquote(urlencodedurl)
Run Code Online (Sandbox Code Playgroud)

python 2.7 中等效的 urllib.parse.unquote() 是什么?

urlparse python-2.7

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

将URL的标题部分拆分为单独的列--Python

假设我有一个URL如下:

http://sitename.com/pathname?title=moviename&url=VIDEO_URL
Run Code Online (Sandbox Code Playgroud)

我想解析这个URL,分别单独获取标题部分和url部分.

我试过以下,

from urlparse import urlparse
q = urlparse('http://sitename.com/pathname?title=moviename&url=VIDEO_URL')
Run Code Online (Sandbox Code Playgroud)

在我这样做之后,我得到以下结果,

q
ParseResult(scheme='http', netloc='sitename.com', path='/pathname', params='', query='title=moviename&url=VIDEO_URL', fragment='')
Run Code Online (Sandbox Code Playgroud)

并且q.query,

'title=moviename&url=VIDEO_URL'
Run Code Online (Sandbox Code Playgroud)

我无法在这里使用q.query.title或q.query.url.有没有办法可以访问它?我想将url和title部分分开分成不同的列.我们可以这样做吗或者我们可以编写一个子字符串方法来检查以"title"开头并以"&"结尾并拆分它吗?

谢谢

python urlparse python-2.7

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

将对象的Unicode表示形式返回到对象中(在python中)

仅供参考 - 这是程序使用Django但我没有标记它因为它不是django问题.django代码在这里用于上下文

~~背景~~

我发现了一个程序中的错误.简而言之,我urlparse.urlparse用来从给定的URI获取信息并将其保存到数据库中.

目标是做这样的事情:

url = urlparse.urlparse('http://somedomain.com/yada/yada')
some_instance = Domain(address=url.netloc)
Run Code Online (Sandbox Code Playgroud)

~~问题~~

问题是由于编码错误,数据库充满了urlparse对象.因此,从数据库中调用实例时,结果是一个unicode字符串:

some_instance = Domain.objects.get(pk=XX)
some_instance.address
>>> u"ParseResult(scheme=u'http', netloc=u'www.somedomain.com', path=u'/', params='', query=u'_vsrefdom=googleppc', fragment='')"
Run Code Online (Sandbox Code Playgroud)

哎呀.

~~问题~~

显然,我需要回去修复一些记录.我很想知道的是,是否有一种好的pythonic方法可以将对象的unicode表示(而不是实际.__unicode__()返回)恢复回对象本身.

思考?

我在谷歌和StackOverflow上看了一下,问题是我遇到的任何搜索与输出的交易.__unicode__()而不是整个表示本身.

python unicode urlparse python-object

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

混淆 url 中的密码

我想隐藏 URL 中的密码以用于日志记录。我希望通过解析、用虚拟密码替换密码并解析来使用urlparse,但这给了我:

>>> from urllib.parse import urlparse
>>> parts = urlparse('https://user:pass@66.66.66.66/aaa/bbb')
>>> parts.password = 'xxx'
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: can't set attribute
Run Code Online (Sandbox Code Playgroud)

所以替代方案似乎是这样,这似乎太过分了。

使用标准库是否有更简单的方法来替换密码?

python obfuscation logging urlparse

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

将参数值添加到flask python中的url

我有以下网址的代码:http://localhost/summary/myfile.csv我希望网址看起来像这样:http:// localhost/summary?file = myfile.csv

代码将写在烧瓶中.

我的第一个网址的代码如下:

@app.route('/summary/<filename>',methods = ['GET'])
def api_summary(filename):
    url = 'C:\\Users\\Desktop\\myproject\\'
    if os.path.exists(url + filename):
        data = pandas.read_csv( url + filename)
        Numeric_Summary = data.describe().to_dict()
        resp = jsonify(Numeric_Summary)
        resp.status_code = 200
        return resp
Run Code Online (Sandbox Code Playgroud)

python urlparse flask

0
推荐指数
1
解决办法
5003
查看次数

如果在javascript中没有定义协议,如何将http://添加到url?

我的问题与此问题相同,但正确的答案是针对PHP而不是javascript.

如果URL中不存在http://如何添加?

如果没有http://或https://或ftp://,如何将http://添加到网址?

Example:

addhttp("google.com"); // http://google.com
addhttp("www.google.com"); // http://www.google.com
addhttp("google.com"); // http://google.com
addhttp("ftp://google.com"); // ftp://google.com
addhttp("https://google.com"); // https://google.com
addhttp("http://google.com"); // http://google.com
addhttp("rubbish"); // http://rubbish
Run Code Online (Sandbox Code Playgroud)

基本上如何使用javascript编写使用PHP语法的相同功能?因为当我使用函数时,preg_match没有在javascript中定义.

function addhttp($url) {
    if (!preg_match("~^(?:f|ht)tps?://~i", $url)) {
        $url = "http://" . $url;
    }
    return $url;
}
Run Code Online (Sandbox Code Playgroud)

javascript urlparse node.js

-4
推荐指数
1
解决办法
5490
查看次数