如何在Scala中显式传递URL
你好,我是Scala的新手。我试过这个密码如何在Scala中显式传递URL,scala,web-crawler,Scala,Web Crawler,你好,我是Scala的新手。我试过这个密码 def web ( url : Any) { | val ur= new URL("url") | val content=fromInputStream(ur.openStream).getLines.mkString("\n") | print(content) | } 当我传递像web(“”)这样的url时 它显示出错误 java.net.MalformedURLException: no protoc
def web ( url : Any) {
| val ur= new URL("url")
| val content=fromInputStream(ur.openStream).getLines.mkString("\n")
| print(content)
| }
当我传递像web(“”)这样的url时
它显示出错误
java.net.MalformedURLException: no protocol: url
at java.net.URL.<init>(URL.java:585)
at java.net.URL.<init>(URL.java:482)
at java.net.URL.<init>(URL.java:431)
at .web(<console>:22)
at .<init>(<console>:23)
at .<clinit>(<console>)
at .<init>(<console>:11)
at .<clinit>(<console>)
at $print(<console>)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at scala.tools.nsc.interpreter.IMain$ReadEvalPrint.call(IMain.scala:704)
at scala.tools.nsc.interpreter.IMain$Request$$anonfun$14.apply(IMain.scala:920)
at scala.tools.nsc.interpreter.Line$$anonfun$1.apply$mcV$sp(Line.scala:43)
at scala.tools.nsc.io.package$$anon$2.run(package.scala:25)
at java.lang.Thread.run(Thread.java:722)
java.net.MalformedURLException:无协议:url
在java.net.URL.(URL.java:585)
位于java.net.URL。(URL.java:482)
在java.net.URL.(URL.java:431)
at.web(:22)
在。(:23)
在
在。(:11)
在
$print()
在sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法)处
在sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)中
在sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)中
位于java.lang.reflect.Method.invoke(Method.java:601)
在scala.tools.nsc.explorer.IMain$ReadEvalPrint.call中(IMain.scala:704)
在scala.tools.nsc.explorer.IMain$Request$$anonfun$14.apply(IMain.scala:920)
在scala.tools.nsc.explorer.Line$$anonfun$1.apply$mcV$sp(Line.scala:43)
在scala.tools.nsc.io.package$$anon$2.run上运行(package.scala:25)
运行(Thread.java:722)
我的问题是如何在scala中显式传递url。请给我一个建议。提前感谢如评论中所述,这一行是问题所在:
val ur= new URL("url")
如果要从输入参数URL
创建URL
,则代码应为:
val ur= new URL(url)
有了这个错误,java
URL
类试图解析一个带有值的字符串“URL”
,首先查找一个可识别的协议(http
,https
,等等),但找不到,因此您看到了这个错误。您希望看到哪个位置新的URL(“URL”)
指向?您好,SSChae如果我正在传递url,很抱歉我没有收到您的问题,我对scala完全陌生,请建议我何时传递url,我应该获取与该站点相关的所有数据。请提出一个想法,这样我可以提高我的知识。感谢您删除新url行中url周围的引号。并将函数的url参数设置为字符串,而不是任何字符串。非常感谢canton的工作!!!!不完全是您所要求的,但是如果我可以制作一个插件,您可能希望使用my Bee Client API()进行http调用,该API将负责干净地关闭输入流等事情。