Python 从JavaScript代码字符串中刮取特定文本
我想在下面的文本中获取Python 从JavaScript代码字符串中刮取特定文本,python,xpath,python-requests,scrapy,Python,Xpath,Python Requests,Scrapy,我想在下面的文本中获取uuid键的值。我可以用XPATH实现这一点吗? 我从一个网站的源代码中抓取这个值 jQuery(document).ready(function ($) { var infoTemplate = Handlebars.compile($('#vehicle-person-template').html()); var summaryTemplate = Handlebars.compile($('#vehic
uuid
键的值。我可以用XPATH
实现这一点吗?
我从一个网站的源代码中抓取这个值
jQuery(document).ready(function ($) {
var infoTemplate = Handlebars.compile($('#vehicle-person-template').html());
var summaryTemplate = Handlebars.compile($('#vehicle-summary-template').html());
axios.post("https:\/\/www.merinfo.se\/ajax\/vehicles", {
uuid: "21ac0674-488a-11e8-9b40-47e7b0ba95bc" })
.then(function (response) {
$('#vehicle-info').html(infoTemplate(response.data.data));
$('#vehicle-summary').html(summaryTemplate(response.data.data));
})
.catch(function (error) {
$("#vehicle-info").html('<p class="font-italic mb-0">Fordonsinformation ej tillgängligt för tillfället</p>');
$('#vehicle-summary').html('<p class="font-italic mb-0">Fordonsinformation ej tillgängligt för tillfället</p>');
});
});
jQuery(document).ready(function ($) {
var source = $("#person-residence-template").html();
var template = Handlebars.compile(source);
axios.post("https:\/\/www.merinfo.se\/api\/v1\/person\/residence", {
uuid: "21ac0674-488a-11e8-9b40-47e7b0ba95bc" })
.then(function (response) {
if (typeof response.data.data !== 'undefined') {
$('#residence-info').html(template(response.data.data));
} else {
$("#residence-info").html('<p class="font-italic mb-0">Vi saknar bostadsinformation för Björn</p>');
}
})
.catch(function (error) {
$("#residence-info").html('<p class="font-italic mb-0">Vi saknar bostadsinformation för Björn</p>');
});
});
jQuery(文档).ready(函数($){
var infoTemplate=handlebar.compile($(“#车辆人员模板”).html();
var summaryTemplate=handlebar.compile($(“#车辆摘要模板”).html();
axios.post(“https:\/\/www.merinfo.se\/ajax\/vehicles”{
uuid:“21ac0674-488a-11e8-9b40-47e7b0ba95bc”})
.然后(功能(响应){
$('#vehicle info').html(infoTemplate(response.data.data));
$('#车辆摘要').html(摘要模板(response.data.data));
})
.catch(函数(错误){
$(“#车辆信息”).html('p class=“font italic mb-0”>fordons information ej tillgängligt för tillfället);
$(“#车辆摘要”).html(“fordons information ej tillgängligt för tillfället
”);
});
});
jQuery(文档).ready(函数($){
var source=$(“#个人居住模板”).html();
var template=handlebar.compile(源代码);
axios.post(“https:\/\/www.merinfo.se\/api\/v1\/person\/residence”{
uuid:“21ac0674-488a-11e8-9b40-47e7b0ba95bc”})
.然后(功能(响应){
if(type of response.data.data!=“未定义”){
$('#住宅信息').html(模板(response.data.data));
}否则{
$(“#居住信息”).html('p class=“font italic mb-0”>Vi saknar bostadsin信息för Björn);
}
})
.catch(函数(错误){
$(“#居住信息”).html('p class=“font italic mb-0”>Vi saknar bostadsin信息för Björn);
});
});
如果将JS代码作为文本,则可以使用正则表达式获取该值
代码
重新导入
pattern=r'uuid:\s\“(.*?\””
uuids=re.findall(模式、代码和文本)
假设您在code\u文本
变量中有代码
uuid
是包含代码中所有uuid的列表
模式解释
:文本“uuid:”uuid:
:后跟空格\s
:然后打开引号\”
:任何字符(并用这些字符组成一个组,这是您想要的值)(.*)
:然后是结束引号\”
*
后面的?
用于在遇到“
时停止匹配任何字符。如果不放置此?
,则它将匹配到代码的最后一个”
(
和)
创建一个组,findall
将给出列表中所有组的值,在本例中,所有值都在引号内,你想要的值。你考虑使用正则表达式吗?我对正则表达式没有理解。我会用它来回答你的问题,并解释说,你真是太好了。你可以检查一下。成功了。很高兴知道:)