Javascript 搜索后如何解析url?
我尝试在使用搜索后解析url的特定部分 任何语言。(理想情况下为Javascript,但对Python开放) 如何获取url的特定部分并保存/存储 比如说,, 在宋景网, 获取艺术家id的方法是在搜索艺术家名称后检查url的特定部分 在网站的搜索栏中 在下面的例子中, 艺术家id为301329 301329-rac 我坚信有一种方法可以使用python或js解析这一部分 假设我有一个csv文件,它的列中有艺术家的名字。而不是一个接一个地搜索所有的艺术家。我想知道读写csv列、搜索、解析url和保存/存储的算法 即使我只能得到一个可以开始的暗示,我也会非常感激Javascript 搜索后如何解析url?,javascript,python,data-visualization,Javascript,Python,Data Visualization,我尝试在使用搜索后解析url的特定部分 任何语言。(理想情况下为Javascript,但对Python开放) 如何获取url的特定部分并保存/存储 比如说,, 在宋景网, 获取艺术家id的方法是在搜索艺术家名称后检查url的特定部分 在网站的搜索栏中 在下面的例子中, 艺术家id为301329 301329-rac 我坚信有一种方法可以使用python或js解析这一部分 假设我有一个csv文件,它的列中有艺术家的名字。而不是一个接一个地搜索所有的艺术家。我想知道读写csv列、搜索、解析url和保
非常感谢您。首先,您可以简单地使用正则表达式。 在
python中
import re
url = 'https://www.songkick.com/artists/301329-rac'
pattern = '/artists/(\d+)-\w'
match = re.search(pattern, url)
if match:
artist_id = match.group(1)
我希望这将对您有所帮助。可以使用正则表达式来完成 下面是一个JavaScript实现的示例
consturl=”https://www.songkick.com/artists/301329-rac";
const regex=/https:\/\/www\.songkick\.com\/artists\/(\d+)-.+/;
const match=url.match(regex);
如果(匹配){
console.log('Artist ID:'+匹配[1]);
}否则{
log('找不到艺术家ID!');
}
这个正则表达式/https:\/\/www\.songkick\.com\/artists\/(\d+)-.+/
意味着我们试图匹配以一组小数开始的内容,前面是一个破折号,然后是一组字母
match()方法检索将字符串与
正则表达式
因此,它将在第一个索引中返回整个字符串,然后在第二个索引中返回匹配的(\d+)
组(match[1]
)
如果您不确定协议(http vs https),可以在https之后的正则表达式中添加一个?
。这使得https中的s是可选的。因此正则表达式将变成/https?:\/\/www\.songchick\.com\/artists\/(\d+).+/
如果您需要更多解释,请告诉我。所有URL的格式都是这样的吗
id rac
@NoSkillMan Yes所有url的格式都相同,“rac”是艺术家名称。所以url格式是“atist id”-“artistname”,他们的API包括艺术家搜索,搜索结果以json/xml格式返回。我建议它可能比解析URL更干净。如果你愿意的话,欢迎带着API上的问题回来。@RonanHughes非常感谢你!!!!如果你不介意,我可以再问你一个问题吗?我想知道我是如何反复浏览艺术家专栏,并获得“艺术家id”,即“完全匹配”作为艺术家名称的?嗨,谢谢。在读取csv中的数据后,python如何为我搜索内容?正则表达式只是一种读取url格式的模式。我希望得到一个代表我执行“搜索”的算法。在您的模式中,您不需要逃避/
-您可能正在考虑使用/
../
来分隔正则表达式的语言。另外,-
只需要在字符类内转义即可。谢谢。问题是我需要首先根据csv文件中的艺术家名称获取艺术家id。为了获得艺术家id,我需要将艺术家名称字符串输入到下面的url中。{your_api_key}&query={artist_name}。如何使js读取我的csv文件中的艺术家名称,并将字符串输入url并解析json文件中的id您可以使用类似的方法解析您的csv文件并获取您的艺术家名称