网络抓取:如何在HTML节点中包括引号字符

如何解决网络抓取:如何在HTML节点中包括引号字符

我正在使用rvest软件包从网站上抓取信息。我需要的一些信息属于类iinfo"。不幸的是,如果我在函数html_nodes()中使用此字符串,则会出现以下错误

Error in parse_simple_selector(stream) : 
  Expected selector,got <STRING '' at 7>

这里是一个代表:

library(rvest)
library(xml2)

webpage <- read_html(x = paste0("https://www.gstsvs.ch/fr/trouver-un-medecin-veterinaire.html?tx_datapool_pi1%5Bhauptgebiet%5D=3&tx_datapool_pi1%5Bmapsearch%5D=cercare&tx_datapool_pi1%5BdoSearch%5D=1&tx_datapool_pi1%5Bpointer2303%5D=",0))

webpage_address <- webpage %>%
    html_nodes('.iinfo"') %>%
    html_text() %>%
    gsub(pattern = "\r|\t|\n",replacement = " ")

该类别指的是网站每个框内列出的地址。如果在浏览器中检查网页结构并导航到该框,则可以检索此信息。如果这样做的话,当您用鼠标选择地址划分时,您会看到带有div.iinfo\"的标志出现。

非常感谢您的帮助!

解决方法

这里:

webpage_address <- webpage %>%
  html_nodes(xpath = "//*[@class='iinfo\"']") %>%
  html_text(trim = T) 

结果:

> webpage_address
 [1] "Anne-Françoise HenchozEnvers 412400 Le Locle,NE"                                                              
 [2] "Téléphone: 032 931 10 10Urgences: 032 931 10 10Fax: 032 931 36 10afhenchoz(at)bluewin.chafhenchoz.com"         
 [3] "Ursi Dommann ScheuberHauptstrasse 156222 Gunzwil,LU"                                                          
 [4] "Téléphone: 041 930 14 44tiergesundheit(at)bluewin.ch"                                                          
 [5] "Dr. Med. Vet. Anne KramerBaggwilgraben 33267 Seedorf,BE"                                                      
 [6] "Téléphone: 079 154 70 15anne(at)alpakavet.chwww.alpakavet.ch"                                                  
 [7] "Dr. med. vet. Andrea FeistAdelbodenstrasse 103714 Frutigen,BE"                                                
 [8] "Téléphone: 033 671 15 60Urgences: 033 671 15 60Fax: 033 671 86 60alpinvet(at)bluewin.chwww.alpinvet.ch"        
 [9] "Dr. med. vet. Peter KürsteinerAlpsteinstr. 289240 Uzwil,SG"                                                   
[10] "Téléphone: 071 951 85 44"                                                                                      
[11] "Kathrin Urscheler-Hollenstein,Eveline Muhl-ZollingerSchaffhauserstrasse 2458222 Beringen,SH"                 
[12] "Téléphone: 052 685 20 20Fax: 052 685 34 20praxis(at)tieraerzte-team.chwww.tieraerzte-team.ch"                  
[13] "Dr. med. vet. Erwin VincenzVia Santeri 127130  Ilanz,GR"                                                      
[14] "Téléphone: 081/925 23 23Urgences: 081/925 23 23Fax: 081/925 23 25info(at)anima-veterinari.ch"                  
[15] "Dr. Zlatko MarinovicMühlerain 3853855072 oeschgen,AG"                                                         
[16] "Téléphone: 49628715060Urgences: 49628715060Fax: 49628712439z.marin(at)sunrise.ch"                              
[17] "Manser ChläusSchwalbenweg 73186 Düdingen,FR"                                                                  
[18] "Téléphone: 026 493 10 60animans.tierarzt(at)gmail.com"                                                         
[19] "W.A.GeesBrünigstrasse 38aHauptstrasse 100,3855 Brienz3860 Meiringen,BE"                                      
[20] "Téléphone: 033 / 971 60 42Urgences: 033 / 971 60 42Fax: 033 / 971 01 50info(at)tierarzt-meiringen.chanisano.ch"

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?
Java在半透明框架/面板/组件上重新绘画。
Java“ Class.forName()”和“ Class.forName()。newInstance()”之间有什么区别?
在此环境中不提供编译器。也许是在JRE而不是JDK上运行?
Java用相同的方法在一个类中实现两个接口。哪种接口方法被覆盖?
Java 什么是Runtime.getRuntime()。totalMemory()和freeMemory()?
java.library.path中的java.lang.UnsatisfiedLinkError否*****。dll
JavaFX“位置是必需的。” 即使在同一包装中
Java 导入两个具有相同名称的类。怎么处理?
Java 是否应该在HttpServletResponse.getOutputStream()/。getWriter()上调用.close()?
Java RegEx元字符(。)和普通点?