Учитывая такую страницу, как this, с двумя заданиями (пока мы будем игнорировать «Открытые приложения»), полностью описанные один за другим, я ищу надежный способ извлечения отдельных спецификаций задания. Первой целью является извлечение спецификаций, а затем, надеюсь, их обернуть в некоторые теги HTML, чтобы они отображались в браузере при сохранении в виде HTML-файла.Разделительные divs больших кусков текста с XPath (или другими)
Очевидно, если бы я знал заранее, что имя класса для верхнего DIV уровня назывались «jobitem», я мог бы запустить простой XPath как //div[@class='jobitem']
Там будет несколько таких сайтов, хотя (с широко разным дизайном, но все с полной спецификацией вакансий, перечисленными один за другим), и моя программа не будет иметь роскошь такого знания имени класса заранее. Одна моя программа будет знать: абсолютное и относительное положение заголовков работ (<h2>
, <h3>
и т. Д.). Другими словами, я буду работать запрос вроде следующего:
//*[self::h2 or self::h3 or self::h4][contains(., 'Country Manager')]
... в результате массив Python lxml объектов XPath, из которых затем могут быть выполнены относительные XPaths. Возможно, это знание является отправной точкой для захвата всего текста между каждым заголовком?