我正在努力获取我从我的网站上抓取的图像的绝对路径。我已经看过jsoup.org上的文档了,但是我不能让abs:src工作。我不知道如何实现abs:src,或者在哪里添加它。
<cfhttp method="get" url="https://theculturecook.com/recipe-slowroasted-pork-belly.html" result="theresult">
<cfscript>
Jsoup = createObject("java", "org.jsoup.Jsoup");
html = "#theresult.filecontent#";
doc = Jsoup.parse(html);
tags = doc.select("img[src$=.jpg]");
</cfscript>
<cfset images = "">
<cfloop index="e" array="#tags#">
<cfoutput>
<cfset images = ListAppend(images,#e.attr("src")#)>
</cfoutput>
</cfloop>
<cfloop list="#images#" index="a">
<cfoutput>#a#<br></cfoutput>
</cfloop>
发布于 2020-05-10 04:13:22
您面临的问题是将html内容传递给JSOUP。如果您需要绝对路径,则需要使用to following进行连接。
Jsoup.connect("https://theculturecook.com/recipe-slowroasted-pork-belly.html").get();
所以最后,
<cfscript>
Jsoup = createObject("java", "org.jsoup.Jsoup");
doc = Jsoup.connect("https://theculturecook.com/recipe-slowroasted-pork-belly.html").get();
tags = doc.select("img[src$=.jpg]");
</cfscript>
<!--- <cfdump var="#a.attr()#" abort> --->
<cfset images = "">
<cfloop index="e" array="#tags#">
<cfoutput>
<cfset images = ListAppend(images, e.attr("abs:src"))>
</cfoutput>
</cfloop>
<cfloop list="#images#" index="a">
<cfoutput>#a#<br></cfoutput>
</cfloop>
https://stackoverflow.com/questions/61696782
复制相似问题