如何捕获Java中特定浏览器的内容?

时间:2019-06-26 05:30:35

标签: java web-scraping

我正在使用Java中的 htmlunit API库访问网站( http://www.bacnet.org/Addenda/ )。

我能够获取整个页面的内容,但是我只想捕获特定区域。

这是我获取页面的方式:

 with open(filepath) as csv_file:
        csv_reader = csv.DictReader(csv_file, delimiter=';')
        headers = next(csv_reader)
        pickle_out = open("dict.pickle", "wb")

     for row in csv_reader:
        pickle.dump(row, pickle_out)

     pickle_out.close()

     pickle_in = open("dict.pickle", "rb")
     example_dict = pickle.load(pickle_in)
     print(example_dict)
     print(csv_reader["Material"])

我想从整个页面捕获突出显示的区域(在红色框中)。

enter image description here

1 个答案:

答案 0 :(得分:0)

首先在HtmlPage上获取Element的ID

HtmlPage page = webClient.getPage("http://www.bacnet.org/Addenda/");
// inspect target_div_id and get that Element here
HtmlDivision div = page.getHtmlElementById("target_div_id");

或者您想要使用其他自定义属性来获取该DOM元素,例如我使用target_class_value给出示例

HtmlPage page = webClient.getPage("http://www.bacnet.org/Addenda/");
// inspect target_class_value and get that Element here
HtmlDivision div = page.getByXPath("//div[@class='target_class_value']");