python中的web抓取:尝试使用BeautifulSoup从img中给定的url获取坐标

2024-10-05 10:38:18 发布

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

我试图获得在同一行中分开的两个链接中给出的URL内的坐标。实际上,我开始抓取所有的URL,然后是坐标,但是,直接获取坐标可能更容易。我正在使用beautifulSoup,我有了下一个HTML代码

enter image description here

如您所见,url在'div class'中给出,后跟一个'id',然后是一个img srcset,最后是一个src,如果您意识到的话,<;img src=>;并且具有URL,其中每个URL的内部包含坐标(19.3410346%2C-99.1579533)。我不知道,我也不明白怎么才能得到它

我正在使用bs4和python 3.9

from bs4 import BeautifulSoup 
import requests 

url='https://departamento.metroscubicos.com/MLM-912728287-departamento-en-zona-privilegiada-en-coyoacan-_JM#position=1&search_layout=grid&type=item&tracking_id=0264c9e9-5bf3-4964-bc39-b7b3609c4a7a' 
resp=requests.get(url) 
soup=BeautifulSoup(resp.content, "html.parser") 

Tags: importsrcidurlimg链接htmlrequests
1条回答
网友
1楼 · 发布于 2024-10-05 10:38:18

它们存在于脚本标记中。我会简单地将它们从响应文本中正则化

import requests, re

r = requests.get('https://departamento.metroscubicos.com/MLM-912728287-departamento-en-zona-privilegiada-en-coyoacan-_JM#position=1&search_layout=grid&type=item&tracking_id=0264c9e9-5bf3-4964-bc39-b7b3609c4a7a')

print('latitude = ', re.search(r'latitude: (.*?),',r.text).group(1))
print('longitude = ', re.search(r'longitude: (.*?),', r.text).group(1))

相关问题 更多 >

    热门问题