Python strip Google警报URL

2024-10-03 06:23:14 发布

您现在位置:Python中文网/ 问答频道 /正文

我现在有一个数据框,里面装满了Google Alert URL,看起来像:

link = 'https://www.google.com/url?rct=j&sa=t&url=http://3dprint.com/4353/littledlper-dlp-3d-printer-kickstarter/&ct=ga&cd=CAEYBCoSODQ1OTg1ODMwMzQwNDUzMTUxMhw2NTFlMTg3MTI1ZGE4Nzc3OmNvLnVrOmVuOkdC&usg=AFQjCNF0HOEhqIZHEpdkH1eVdXt-JRBF3Q'

我只想要url=后面和垃圾之前的部分。在

^{pr2}$

我使用urllib.parse.urlparse(link)来获取URL元素的列表。。。在

parsed = ParseResult(scheme='https', netloc='www.google.com', path='/url', params='', query='rct=j&sa=t&url=http://3dprint.com/4353/littledlper-dlp-3d-printer-kickstarter/&ct=ga&cd=CAEYBCoSODQ1OTg1ODMwMzQwNDUzMTUxMhw2NTFlMTg3MTI1ZGE4Nzc3OmNvLnVrOmVuOkdC&usg=AFQjCNF0HOEhqIZHEpdkH1eVdXt-JRBF3Q', fragment='')

但即便如此,parsed[4]也只是把它分解成。。。在

'rct=j&sa=t&url=http://3dprint.com/4353/littledlper-dlp-3d-printer-kickstarter/&ct=ga&cd=CAEYBCoSODQ1OTg1ODMwMzQwNDUzMTUxMhw2NTFlMTg3MTI1ZGE4Nzc3OmNvLnVrOmVuOkdC&usg=AFQjCNF0HOEhqIZHEpdkH1eVdXt-JRBF3Q'

我在堆栈上发现了相同问题的otherqueries,但它们使用的是Python以外的其他编程语言。在

对Python方法有什么想法吗?在


Tags: comhttpurlsacdprintergact
1条回答
网友
1楼 · 发布于 2024-10-03 06:23:14

您可以在parsed[4]上使用regex来提取该URL:

(?:^|&)url=([^&]+)

参见regex demo

详情

  • (?:^|&)-字符串开头或&
  • url=-文本url=
  • ([^&]+)-第1组捕获&以外的一个或多个符号。在

Python demo

^{pr2}$

相关问题 更多 >