Python get html элемент по Xpath - PullRequest
1 голос
/ 07 апреля 2020

Я пытаюсь получить элемент HTML с помощью XPath, я пробовал это так, но он всегда возвращает пустую строку. Кто-нибудь может сказать мне, как я получаю Элемент по его X-Path?

    for x in list_href_einrichtungen:

      url = 'https://pflegefinder.bkk-dachverband.de/' + x
      source_code = requests.get(url)
      plain_text = source_code.text
      soup = BeautifulSoup(plain_text)

      **doc = lxml.html.fromstring(source_code.content)
      strasse = doc.xpath('div[3]/div[3]/table[1]/tbody/tr/td/div/div/div[1]/p[1]/text()[1]')**

      name = soup.find('h2').text
      uebergabeeinrichtung = Einrichtung("IK", name, 'Teststraße', '12345', 'Ort', "telefon", 
      'Telefax', 'email','internet')

      list_einrichtungen.append(uebergabeeinrichtung)
      print(name,  strasse)

enter image description here

1 Ответ

2 голосов
/ 07 апреля 2020

S ie können kein Element mit Beautifulsoup mit XPATH finden. Eine Andere Library, d ie S ie benutzten können heisst 'l xml'. Это происходит в StackOverflow. Als Beispiel:

from urllib.request import urlopen
from lxml import etree

url =  "http://www.example.com/servlet/av/ResultTemplate=AVResult.html"
response = urlopen(url)
htmlparser = etree.HTMLParser()
tree = etree.parse(response, htmlparser)
tree.xpath(xpathselector)

Ич Хоффе, шляпа дас дас гехолфен!

pd: Извините, Фюрс Дойч, ich lerne gerade;)

...