如何从 python3 中的 Swarm 网页提取 Foursquare url 位置?
How can I extract the Foursquare url location from Swarm webpage in python3?
假设我们有这个群体 url“https://www.swarmapp.com/c/dZxqzKerUMc”我们如何在上面的 link 中的 Apple Williamsburg hyperlink 下获得 url。
我试图根据 html 标签过滤掉它,但是有很多标签和很多 foursquare.com link。
下面是给定 link 上面
的源代码的一部分
<h1><strong>Kristin Brooks</strong> at <a
href="https://foursquare.com/v/apple-williamsburg/57915fa838fab553338ff7cb"
target="_blank">Apple Williamsburg</a></h1>
代码中的 url 四方块并不总是相同的,那么对于每个给定的 Swarm url.[=15= 获得特定 url 唯一的最佳方法是什么? ]
我试过这个:
import bs4
import requests
def get_4square_url(link):
response = requests.get(link)
soup = bs4.BeautifulSoup(response.text, "html.parser")
link = [a.attrs.get('href') for a in
soup.select('a[href=https://foursquare.com/v/*]')]
return link
print (get_4square_url('https://www.swarmapp.com/c/dZxqzKerUMc'))
我使用 https://foursquare.com/v/ 作为模式来获得理想的 url
def get_4square_url(link):
try:
response = requests.get(link)
soup = bs4.BeautifulSoup(response.text, "html.parser")
for elem in soup.find_all('a',
href=re.compile('https://foursquare\.com/v/')): #here is my pattern
link = elem['href']
return link
except requests.exceptions.HTTPError or
requests.exceptions.ConnectionError or requests.exceptions.ConnectTimeout \
or urllib3.exceptions.MaxRetryError:
pass
假设我们有这个群体 url“https://www.swarmapp.com/c/dZxqzKerUMc”我们如何在上面的 link 中的 Apple Williamsburg hyperlink 下获得 url。
我试图根据 html 标签过滤掉它,但是有很多标签和很多 foursquare.com link。 下面是给定 link 上面
的源代码的一部分<h1><strong>Kristin Brooks</strong> at <a
href="https://foursquare.com/v/apple-williamsburg/57915fa838fab553338ff7cb"
target="_blank">Apple Williamsburg</a></h1>
代码中的 url 四方块并不总是相同的,那么对于每个给定的 Swarm url.[=15= 获得特定 url 唯一的最佳方法是什么? ]
我试过这个:
import bs4
import requests
def get_4square_url(link):
response = requests.get(link)
soup = bs4.BeautifulSoup(response.text, "html.parser")
link = [a.attrs.get('href') for a in
soup.select('a[href=https://foursquare.com/v/*]')]
return link
print (get_4square_url('https://www.swarmapp.com/c/dZxqzKerUMc'))
我使用 https://foursquare.com/v/ 作为模式来获得理想的 url
def get_4square_url(link):
try:
response = requests.get(link)
soup = bs4.BeautifulSoup(response.text, "html.parser")
for elem in soup.find_all('a',
href=re.compile('https://foursquare\.com/v/')): #here is my pattern
link = elem['href']
return link
except requests.exceptions.HTTPError or
requests.exceptions.ConnectionError or requests.exceptions.ConnectTimeout \
or urllib3.exceptions.MaxRetryError:
pass