如何打开一个URL,然后打开另一个附加到关键字的URL?

时间:2019-03-31 02:10:57

标签: python url bots

基本上,我希望脚本能够打开URL,然后搜索关键字并打开附加到关键字的链接。

这里是一个示例,我要打开Supreme纽约夹克的URL,并且我想打开Supreme Jacket URL上的一件名为Cheetah Hooded Jacket(在网站更新之前发布)的夹克的URL。我需要能够在网站更新后的几秒钟内执行此操作,因此我无法预先知道从一开始就将其打开的URL。我必须打开第一个URL,并使用关键字找到第二个URL,然后使用Python打开它。

我已经知道如何打开URL:

import webbrowser
webbrowser.open('https://www.supremenewyork.com/shop/all/jackets')

但是我不知道如何使用关键字来找到附加到它的URL。

1 个答案:

答案 0 :(得分:0)

首先,如果要查找页面的内容,则需要向页面发出请求,而不仅仅是打开它。例如,要使用requests模块(通过pip获得页面)来获取页面的内容,可以编写以下内容:

import requests

req = requests.get('https://www.supremenewyork.com/shop/all/jackets')
req.raise_for_status()

content = req.text()

然后,您可以使用正则表达式或处理HTML的BeautifulSoup模块(同样通过pip)来查找所需的链接。
使用正则表达式,您的代码将如下所示:

import re

# get content

for match in re.findall(r'<a.*>', content):
    if match and 'some criteria' in match.group(0):
       new_url = re.search('href=\"(.*)\"', match.group(0))

       if new_url:
           new_url = new_url.group(1)

从这里开始,只需在Web浏览器中打开new_url,您就可以开始了。 与往常一样,自行查找这些模块,以便您知道如何使我的代码适应您的需要,并在将来解决其他类似问题。

P。 S.我不知道我使用的正则表达式是否适合您的用例,但您明白了。

希望这会有所帮助!

链接

请求:http://docs.python-requests.org/en/master/

BeautifulSoup:https://www.crummy.com/software/BeautifulSoup/bs4/doc/

正则表达式:https://docs.python.org/3/library/re.html