до сих пор я успешно получил некоторые детали из подкатегорий, но этого тоже недостаточно. Я должен взять каждую деталь как:
Название продукта: Обувь Детали продукта: обувь Дата: 06.12.2020 Цена: рупий. 2,500
(Совершенно новый)
Здесь Название продукта и Подробная информация о продукте дают тот же результат, но это не тот результат, который я хочу. Я хочу что-то вроде этого:
Название продукта: Обувь Детали продукта: Совершенно новая обувь Highcopy ... Продавец: s unil t Дата: 06.12.2020 Цена: рупий. 2,500 Использование: Совершенно новый
Изображение для этого конкретного товара
for your convenience this is the site I'm scarping
https://hamrobazaar.com/c6-apparels-and-accessories
Код такой:
public static void main(String[] args) throws IOException {
LogFactory.getFactory().setAttribute("org.apache.commons.logging.Log",
"org.apache.commons.logging.impl.NoOpLog");
java.util.logging.Logger.getLogger("com.gargoylesoftware.htmlunit").setLevel(Level.OFF);
java.util.logging.Logger.getLogger("org.apache.commons.httpclient").setLevel(Level.OFF);
java.util.logging.Logger.getLogger("com.gargoylesoftware").setLevel(Level.OFF);
final String url = "https://hamrobazaar.com/c6-apparels-and-accessories"
WebClient webClient = new WebClient(BrowserVersion.FIREFOX);
HtmlPage rootPage = webClient.getPage(new URL(url));
List<HtmlTable> tableElements = rootPage
.getByXPath("/html/body/table/tbody/tr[2]/td/table/tbody/tr[1]/td/table[5]/tbody/tr/td[2]/table");
try{
for (int i = 0; i < tableElements.size(); i++) {
if (i == 0 ||
i == 1) {
continue;
}
HtmlTableRow row = tableElements.get(i).getRow(0);
HtmlTableCell productCell = row.getCell(2);
if(productCell.getElementsByTagName("a").get(0).asText().equals(null)) {
continue;
} else {
String productName = productCell.getElementsByTagName("a").get(0).asText();
System.out.println("Product Name :"+productName);
}
System.out.println("Product Details :" + productCell.getElementsByTagName("font").get(0).asText() );
System.out.println("Date :" + row.getCell(3).asText());
System.out.println("Price :" + row.getCell(4).asText());
}
} catch (Exception e) {
System.out.println("Exception raised");
}
} Пожалуйста, помогите мне разобраться. Тонны благодарности