получение пустого источника при очистке - PullRequest
0 голосов
/ 28 июня 2018

Я пытаюсь очистить содержимое сайта с помощью Jsoup. HTML-код, проанализированный Jsoup, имеет пустой атрибут src (т.е. src = ""), в то время как при проверке веб-сайта в chrome он показывает непустой src (он не заполняется JavaScript). Это не просто проблема только с Jsoup, Scrapy возвращает те же результаты (пустой src). Я попытался добавить пользовательский агент пользователя.

Может кто-нибудь сказать, что может быть причиной этой проблемы и возможных решений. * Я не могу использовать методы, такие как селен, потому что я ищу решение для разработки приложений для Android. Спасибо!

Edit:

Используемый сайт - flipkart.com. Я извлекаю из результатов поиска https://www.flipkart.com/search?q=xbox&marketplace=FLIPKART&sid=search.flipkart.com

Src из его тега "img" анализируется пустым.

Ответы [ 2 ]

0 голосов
/ 28 июня 2018

Вы можете использовать Selenium с Python , чтобы очистить этот атрибут src.

#!/bin/bash/env python

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.by import By

driver = webdriver.Firefox()
driver.get("https://www.flipkart.com/search?q=xbox&marketplace=FLIPKART&sid=search.flipkart.com")

elem = driver.find_elements(By.XPATH, '//img[@class="_1Nyybr"]')

for element in elem:
    print element.get_attribute('src')
    print element.get_attribute('class')

driver.close()

EDIT

используйте contains для получения результатов.

elem = driver.find_elements_by_xpath('//img[contains(@class, "_30XEf0")]')
0 голосов
/ 28 июня 2018

Атрибут src пуст. Просмотр источника страницы в браузере и поиск класса. Тогда вы найдете значение атрибута src пустым. enter image description here

...