在网页的源代码中查找字符串

时间:2017-10-29 13:19:04

标签: javascript

我很抱歉,我几乎没有编程经验所以这将是一个非常基本的,几乎荒谬的问题,但答案会为我节省很多时间,因为我不需要做一个非常例行的工作。我非常感谢有人的帮助!

我想知道如何在网页的源代码中找到某个字符串。

我正在使用我在互联网上找到的javascript代码来帮助我学习葡萄牙语。当我学习一个新单词时,我使用该脚本打开多个网页(字典,带发音的网页等)。简化版看起来像这样:

<!DOCTYPE html>
<html>

  <head></head>

  <body style="background-color:grey">
    <p>What Portuguese word would you like to multisearch? Type below, then press enter please.</p>
    <input type="text" id="boxu" autofocus>
    <script>
      document.getElementById("boxu").onkeydown = function(e) {
        searchy(e)
      };

      function searchy(e) {
        if (e.which == 13) {
          var q = document.getElementById("boxu").value;
          window.open("https://www.collinsdictionary.com/dictionary/portuguese-english/" + q);
          window.open("http://www.linguee.com/portuguese-english/translation/" + q + ".html");
          document.getElementById("boxu").value = "";
        }
      }

    </script>
  </body>

</html>

我想做的事情:我想在另一个标签中打开(或直接下载)带有给定单词发音的音频文件。 collinsdictionary.com在他们的网站上发音。让我们说我正在搜索葡萄牙语单词&#34; cotovelo&#34; (弯头)。如果我在https://www.collinsdictionary.com/dictionary/portuguese-english/cotovelo的源代码中搜索&#34; https://www.collinsdictionary.com/sounds/p/pt_/pt_br/pt_br_w&#34;,此字符串后面跟着7位数我正在寻找。在这种情况下&#34; 0028290&#34;。音频文件的链接是&#34; https://www.collinsdictionary.com/sounds/p/pt_/pt_br/pt_br_w0028290.mp3&#34;。

我正在寻找的每个单词的过程都是一样的,我想编写一个脚本,自动化打开源代码,搜索7位数字的字符串,并在新窗口中打开链接。我试图在网上搜索答案并自己编写代码,但是如果没有任何编程知识就很困难。

非常感谢您的回答!

1 个答案:

答案 0 :(得分:0)

我为你写了一个简短的脚本。它包含一个输入文本,您可以在其中输入单词页面(URL),当您单击“获取发音”按钮时,它会生成该单词的英语声音的下载链接。脚本的本质是:

// makes a HTTP get request to the word's web page
$.get(url)
  .done(function(data) {
  // if request successful
  // wrap data to a new jQuery object
  var html = $(data);
  // look for your portugese sound link in this object 
  var mp3link = $(".audio_play_button.icon-volume-up.ptr", html);
  // now if found, do something with it - open in new tab or make download link

您可以找到工作脚本 here的完整内容。我试图解释代码在注释中的作用,因此如果你想改进/扩展它,你就知道从哪里开始。

例如,如果您输入链接https://www.collinsdictionary.com/dictionary/portuguese-english/couracado,则会下载 battleship 一词的英语发音。享受!