Очистите фоновые изображения с помощью X-Ray-Scraper
Я использовал X-Ray для очистки сайта, который работал очень хорошо. Я могу использовать это очень легко вводить изображения. Единственный предмет, с которым я сталкиваюсь - я не вижу простого способа очистить фоновое изображение. Скажем, у меня есть div, в котором они устанавливают атрибут стиля для этого разработчика, а затем задают URL, и я не уверен, как получить URL фонового изображения из этого. Я не думаю, что я могу просто передать атрибут признакам изображения свойство css, такое как
.featured-image.attr('background-image');
const getWebsiteContent = async (blogURL, selector) => {
try {
return await x(blogURL, selector, [{
slug: 'a@href',
featuredImage: 'img@src'
}])
.paginate(`${pagi}@href`)
.limit(200)
.then((response) => {
spinner.succeed('Got the data');
return response;
})
} catch (error) {
throw new Error('Cannot get Data from website, try checking your URL');
}
};
0 ответов
Для тех, кто хочет решить эту проблему с помощью рентгеновского скребка, я в итоге извлек атрибут из селектора, который вы передаете в объект. Полученный HTML выглядит следующим образом.
<div class="img" style="background-image: url('../path-to-img.jpg')"></div>
Вместо того чтобы писать .img@src
ты мог бы написать .img@style
и это вернет вам атрибут стиля. Оттуда вам нужно будет использовать регулярное выражение, чтобы удалить остальные ненужные данные, которые не являются URL-адресом изображения.