使用javascript和yql从网页获取图像和文本
尝试学习如何使用 yqlexecute 解析页面。我想分别返回文本和图像。我还想更改所有图像的宽度。尝试为此编写 javascript,但它不起作用。有人能指出我正确的方向吗?
<执行>{text}; <图像>{图像}; ]]>
trying to learn how to parse pages with yql execute. I want to return the text and images separately. I also want to change the width of all the images. Tried to write javascript for this but it isn't working. Can anyone point me in the right direction?
<execute><![CDATA[ var q = y.query('select * from html where url=@url and xpath=@xpath',{url:url,xpath:xpath}); var myresults = q.results; var images = myresults.getElementsByTagName('img'); images.setAttribute('width','150'); text = myresults.getElementById("p").textContent; response.object = <text>{text}</text> <images>{images}</images>; ]]> </execute>
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
实际上,只需使用 YQL 中内置的 html 表,您就可以做与您想要的非常相似的事情。这是我从这篇文章中选择 img 和 p 元素的示例。
我在一个 Xpath 中使用两个不同的 XPath 表达式:
完整查询:
尝试一下。
Actually you can do something very similar to what you want by just using th html table that is built into YQL. Here an example where I am selecting img and p elements from this article.
I use two different XPath expressions within one Xpath:
The full query:
Try it out.