当前位置:首页 » 编程语言 » pythonurl地址转换

pythonurl地址转换

发布时间: 2022-03-06 16:13:14

1. python url提取

importre
text='<ahref="/Enterprise/GeneralWorkerDetails/3553297586.html"class="clearfix">'
p=re.compile("<ahref="(.*?)"");
match=p.match(text)
printmatch.group(1)

2. python字符串与url编码的转换实例

python字符串与url编码的转换实例
今天小编就为大家分享一篇python字符串与url编码的转换实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
主要应用的场景
爬虫生成带搜索词语的网址

1.字符串转为url编码
import urllib
poet_name = "李白"
url_code_name = urllib.quote(poet_name)
print url_code_name
#输出
#%E6%9D%8E%E7%99%BD

2.url编码转为字符串
import urllib
url_code_name = "%E6%9D%8E%E7%99%BD"
name = urllib.unquote(url_code_name)
print name
#输出
#李白
以上这篇python字符串与url编码的转换实例就是小编分享给大家的全部内容了篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助

3. python 访问链接,如何捕获跳转链接地址

可以的。
urlib.geturl()函数就可以返回打开的真实地址。

4. 如何将编码过的url再转回到汉字html,python

>>> import urllib
>>> urllib.quote('中文')
'%E4%B8%AD%E6%96%87'
>>> urllib.unquote('%E4%B8%AD%E6%96%87')
'\xe4\xb8\xad\xe6\x96\x87'
>>> print urllib.unquote('%E4%B8%AD%E6%96%87')
中文

然后你自己chdir()试试吧

如果不行,可能要转换成unicode先

s = urllib.unquote('%E4%B8%AD%E6%96%87')
uni = str.decode(s)
os.chdir(uni)

5. 这个python例子中如何用正则表达式提取url

import re
m=re.search(r'//[0-9A-Za-z./]+',url)

具体要考虑连接里的字符,以及其他地方的正文字符

6. python 空格转url 怎么变为+号

str.replace('','+')

7. python批量写入url地址文档并解析

url量有多大?爬虫建议用scrapy框架。

lines=open('1.txt').readlines()
forurlinlines:
html=urllib.urlopen(url).read()
#....

8. python怎么将url的中文怎么转码

先引入urllib模块
假如我们要对下面的url进行转码,注意观察各种字符的变化
使用quote方法,进行转码
我们看看转码得到的结果:
我们想要得到原先的url,可以使用quote的逆函数unquote
得到反转码以后的url,我们看到这种方法并没有返回中文字符。

9. python 无法转url 编码怎么解决

今天要处理网络贴吧的东西。想要做一个关键词的list,每次需要时,直接添加 到list里面就可以了。但是添加到list里面是中文的情况(比如‘丽江’),url的地址编码却是'%E4%B8%BD%E6%B1%9F',因此需 要做一个转换。这里我们就用到了模块urllib。
>>> import urllib
>>> data = '丽江'
>>> print data
丽江
>>> data
'\xe4\xb8\xbd\xe6\xb1\x9f'
>>>urllib.quote(data)
'%E4%B8%BD%E6%B1%9F'
那我们想转回去呢?
>>> urllib.unquote('%E4%B8%BD%E6%B1%9F')
'\xe4\xb8\xbd\xe6\xb1\x9f'
>>> printurllib.unquote('%E4%B8%BD%E6%B1%9F')
丽江
细心的同学会发现贴吧url中出现的是%C0%F6%BD%AD,而非'%E4%B8%BD%E6%B1%9F',其实是编码问题。网络的是gbk,其他的一般网站比如google就是utf8的。所以可以用下列语句实现。
>>> import sys,urllib
>>> s = '丽江'
>>> urllib.quote(s.decode(sys.stdin.encoding).encode('gbk'))
'%C0%F6%BD%AD'
>>> urllib.quote(s.decode(sys.stdin.encoding).encode('utf8'))
'%E4%B8%BD%E6%B1%9F'
>>>
另一个方法
#!/usr/bin/python
import urllib
import sys
string = sys.argv[1]
string = unicode(string,"gbk")
utf8_string = string.encode("utf-8")
gbk_string=string.encode("gbk")
gbk=urllib.quote(gbk_string)
utf8=urllib.quote(utf8_string)
print gbk
print utf8

10. url编码问题在python中怎么解决

最近在抓取一些js代码产生的动态数据,需要模拟js请求获得所需用的数据,遇到对url进行编码和解码的问题,就把遇到的问题总结一下,有总结才有进步,才能使学到的知识更加清晰。对url进行编码和解码,python提供了很方便的接口进行调用。

url中的query带有特殊字符(不是url的保留字)时需要进行编码。当url中带有汉字时,需要特殊的处理才能正确编码,以下都只针对这种情形,当然也适用于纯英文字符的url。

(1) url编码:

import urllib

url = 'wd=哈哈' #如果此网站编码是gbk的话,需要进行解码,从gbk解码成unicode,再从Unicode编码编码为utf-8格式。

url = url.decode('gbk', 'replace')

print urllib.quote(url.encode('utf-8', 'replace'))

结果: 3a%2f%2ftest.com%2fs%3fwd%3d%e5%93%88%e5%93%88

(2) url解码:

import urllib

encoded_url = est.com%2fs%3fwd%3d%e5%93%88%e5%93%88'

print urllib.unquote(encoded_url).decode('utf-8', 'replace').encode('gbk', 'replace') #反过来

函数调用的参数以及结果都是utf-8编码的,所以在对url编码时,需要将参数串的编码从原始编码转换成utf-8,

对url解码时,需要将解码结果从utf-8转换成原始编码格式。

依据网站采用的编码不同,或是gbk或是utf-8,赋赋予不同的编码,进行不同的url转码。GBK格式,一个中文字符转为%xx%xx,共两组;utf-8格式,一个中文字符转为%xx%xx%xx,共三组。

  • >>>importsys,urllib

  • >>>s='杭州'

  • >>>urllib.quote(s.decode(sys.stdin.encoding).encode('gbk'))

  • %BA%BC%D6%DD

  • >>>urllib.quote(s.decode(sys.stdin.encoding).encode('utf8'))

  • '%E6%9D%AD%E5%B7%9E'

  • [python]view plain

  • a="墨西哥女孩被拐4年接客4万次生的孩子成为人质-搜狐新闻"

  • printurllib.quote(urllib.quote(a))

  • 进行两次编码转换后,会变为:%25E5%25A2%25A8%25E8%25A5%25BF%25E5%2593%25A5%25E5%25A5%25B3%25E5%25AD%25A9%25E8%25A2%25AB%25E6%258B%25904%25E5%25B9.................................................................................这样的形式。

    同样需要两次解码后才能得到中文。

    最近用python写了个小爬虫自动下点东西,但是url 是含中文的,而且中文似乎是 gbk 编码然后转成 url的。举个例子吧,我如果有个unicode字符串“历史上那些牛人们.pdf”,那么我转换成url之后是,
    t="%20%E5%8E%86%E5%8F%B2%E4%B8%8A%E9%82%A3%E4%BA%9B%E7%89%9B%E4%BA%BA%E4%BB%AC.pdf",
    但是对方网站给的是 s="%C0%FA%CA%B7%C9%CF%C4%C7%D0%A9%C5%A3%C8%CB%C3%C7.PDF"

    >>>print urllib.unquote("%C0%FA%CA%B7%C9%CF%C4%C7%D0%A9%C5%A3%C8%CB%C3%C7.PDF").decode('gbk').encode('utf-8')

    >>>历史上那些牛人们.PDF

热点内容
存储卡交流 发布:2025-01-13 07:16:06 浏览:982
php字符串浮点数 发布:2025-01-13 07:15:28 浏览:997
python排序cmp 发布:2025-01-13 07:09:04 浏览:71
云脚本精灵 发布:2025-01-13 07:03:27 浏览:617
高维访问 发布:2025-01-13 07:03:23 浏览:974
保卫萝卜有脚本吗 发布:2025-01-13 06:30:29 浏览:741
天猫上传 发布:2025-01-13 06:06:35 浏览:156
php处理并发 发布:2025-01-13 06:03:44 浏览:283
安卓传文件的软件哪个最好 发布:2025-01-13 06:03:07 浏览:886
电脑服务器可以做吗 发布:2025-01-13 05:59:49 浏览:847