使用javascript和yql从网页获取图像和文本

发布于 2024-10-18 11:20:07 字数 569 浏览 1 评论 0原文

尝试学习如何使用 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 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

血之狂魔 2024-10-25 11:20:07

实际上,只需使用 YQL 中内置的 html 表,您就可以做与您想要的非常相似的事情。这是我从这篇文章中选择 img 和 p 元素的示例。

我在一个 Xpath 中使用两个不同的 XPath 表达式:

//div[@id='left_col']//img
//div[@id='left_col']//p

完整查询:

SELECT * FROM html WHERE url="http://www.computerworld.com/s/article/9209140/Sentiment_analysis_comes_of_age" AND xpath="//div[@id='left_col']//img|//div[@id='left_col']//p"

尝试一下。

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:

//div[@id='left_col']//img
//div[@id='left_col']//p

The full query:

SELECT * FROM html WHERE url="http://www.computerworld.com/s/article/9209140/Sentiment_analysis_comes_of_age" AND xpath="//div[@id='left_col']//img|//div[@id='left_col']//p"

Try it out.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文