Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 亚洲伊人成综合成人网,日韩免费视频在线观看,www.久久视频

          整合營銷服務商

          電腦端+手機端+微信端=數據同步管理

          免費咨詢熱線:

          如何用JAVA 寫一個簡單爬蟲

          如何用JAVA 寫一個簡單爬蟲

          了編寫一個Java爬蟲,你需要了解以下幾個步驟:

          1. 首先,你需要確定你要抓取的網站??梢詮臑g覽器中復制網站的URL并粘貼到你的Java代碼中。
          2. 接下來,你需要使用Java的網絡編程API連接到該網站。你可以使用URLConnection或HttpClient等庫。
          3. 一旦你建立了一個連接,你就可以開始讀取網頁內容。你可以使用Java的IO庫讀取網頁。
          4. 在讀取網頁內容之后,你需要解析網頁以提取所需的信息。這可以使用Java的解析器,如Jsoup或XML解析器。
          5. 最后,你需要存儲或使用所提取的信息。你可以將信息保存到數據庫中,將其輸出到文件中,或將其用于其他用途。

          下面是一個基本的Java爬蟲代碼示例,它使用Jsoup解析器和URLConnection庫連接到目標網站并提取標題和鏈接信息:

          import java.io.IOException;
          import java.net.URL;
          import java.net.URLConnection;
          import java.util.Scanner;
          
          import org.jsoup.Jsoup;
          import org.jsoup.nodes.Document;
          import org.jsoup.nodes.Element;
          import org.jsoup.select.Elements;
          
          public class SimpleWebCrawler {
            
            public static void main(String[] args) {
              String url="https://www.example.com/";
              try {
                URLConnection conn=new URL(url).openConnection();
                conn.addRequestProperty("User-Agent", "Mozilla/5.0");
                Scanner scanner=new Scanner(conn.getInputStream());
                String html=scanner.useDelimiter("\\Z").next();
                scanner.close();
                Document doc=Jsoup.parse(html);
                Elements links=doc.select("a[href]");
                for (Element link : links) {
                  System.out.println(link.attr("href") + " - " + link.text());
                }
              } catch (IOException e) {
                e.printStackTrace();
              }
            }
          }
          

          Jsoup

          Jsoup是一款用于解析HTML和XML文檔的Java庫。它提供了類似于jQuery的語法來操作文檔,使得解析和處理文檔變得非常簡單。

          以下是Jsoup解析器的一些常用功能:

          1. 解析HTML文檔:使用Jsoup可以輕松解析HTML文檔,并且可以處理各種標簽、屬性、文本內容等。
          2. 獲取元素:可以使用類似于jQuery的選擇器語法來獲取HTML文檔中的元素,例如獲取所有的鏈接、圖片等。
          3. 修改元素:可以使用Jsoup修改HTML文檔中的元素,例如修改元素的屬性、添加或刪除元素等。
          4. 過濾HTML文檔:可以使用Jsoup過濾HTML文檔中的不必要的元素,例如過濾掉廣告、統計代碼等。
          5. 處理字符編碼:可以使用Jsoup來處理HTML文檔中的字符編碼,例如將文檔中的ISO-8859-1編碼轉換為UTF-8編碼等。
          6. 支持HTTPS:Jsoup還支持使用HTTPS協議獲取HTML文檔,可以使用它來爬取一些需要登錄才能訪問的網站。

          總之,Jsoup是一款非常實用的HTML和XML解析器,可以幫助Java開發者快速、簡單地解析和處理HTML文檔,使得爬蟲開發變得更加容易。

          Jsoup的使用

          使用Jsoup解析器需要先將其添加到項目的依賴中??梢酝ㄟ^Maven或者Gradle來添加依賴。

          例如,使用Maven添加Jsoup的依賴:

          <dependency>
              <groupId>org.jsoup</groupId>
              <artifactId>jsoup</artifactId>
              <version>1.14.3</version>
          </dependency>

          添加依賴之后,就可以在Java代碼中使用Jsoup了。以下是使用Jsoup解析器獲取HTML文檔中所有鏈接的示例代碼:

          import org.jsoup.Jsoup;
          import org.jsoup.nodes.Document;
          import org.jsoup.nodes.Element;
          import org.jsoup.select.Elements;
          
          public class JsoupExample {
              public static void main(String[] args) {
                  String html="<html><head><title>Jsoup Example</title></head>"
                          + "<body><p>Jsoup is a Java library for working with real-world HTML.</p>"
                          + "<a href=\"http://example.com\">Example</a></body></html>";
          
                  Document doc=Jsoup.parse(html); // 將HTML字符串解析為文檔對象
          
                  Elements links=doc.select("a"); // 獲取所有的鏈接元素
          
                  for (Element link : links) {
                      String href=link.attr("href"); // 獲取鏈接的URL地址
                      String text=link.text(); // 獲取鏈接的文本內容
                      System.out.println(href + ": " + text);
                  }
              }
          }
          

          以上代碼使用Jsoup將HTML字符串解析為文檔對象,然后使用選擇器語法獲取所有的鏈接元素,并輸出它們的URL地址和文本內容。

          除此之外,Jsoup還有很多其他的功能,例如修改元素、過濾HTML文檔等等,可以根據具體需求靈活運用。

          Jsoup 解析器的常見功能和代碼片段示例

          1.獲取網頁的 Title:

          Document doc=Jsoup.connect("http://example.com/").get();
          String title=doc.title();

          2.獲取指定標簽的文本內容:

          Element element=doc.select("div.content").first();
          String text=element.text();

          3.獲取指定屬性的值:

          Element element=doc.select("img").first();
          String src=element.attr("src");

          4.過濾 HTML 標簽:

          String html="<p>這是一段 <b>加粗</b> 的文本。</p>";
          String text=Jsoup.parse(html).text();

          5.修改 HTML 內容:

          Element element=doc.select("div.content").first();
          element.append("<p>這是新增的文本內容。</p>");

          6.提取網頁中的鏈接:

          Elements links=doc.select("a[href]");
          for (Element link : links) {
              String href=link.attr("href");
              System.out.println(href);
          }

          7.提取網頁中的圖片:

          Elements imgs=doc.select("img[src~=(?i)\\.(png|jpe?g|gif)]");
          for (Element img : imgs) {
              String src=img.attr("src");
              System.out.println(src);
          }

          這些只是 Jsoup 解析器的常見用法之一。Jsoup 還有更多的功能,如解析 XML、處理表單、處理 Cookie 等,大家可以自己去了解!

          有不足之處大家也可以在評論區指出!

          低版本安卓中對TextView加載html所支持的標簽不夠多,比如在搭載了android 5.1的手機上我們的app調用了Html.froml為TextView設置文本時,當source包含span標簽時不會處理,高版本則會去處理;

          對比下高低版本的Html.java如下:

          android api level 22


          android api level 28


          我們發現,高版本是支持span標簽的,那低版本怎么處理呢?我們看到方法handleStartTag

          中在不支持的標簽都會回調一個方法:


          所以我們只需要傳入自定義的TagHandler就可以處理Html.java不支持的標簽了。

          一開始我們為TextView設置文本時這樣寫:

          String text="創建<span style='color: #ff8500;'>7</span>天,累計消費<span style='color: #ff8500;'>15</span>元";
          textview.setText(Html.fromHtml(text));

          高版本手機正常加載span標簽,低版本的手機效果如下:

          更改后這樣寫:

          String text="創建<span style='color: #ff8500;'>7</span>天,累計消費<span style='color: #ff8500;'>15</span>元";
          textview.setText(Html.fromHtml(text,null,new CustomTagHandler()));

          更改后在低版本效果如下:

          CustomTagHandler的實現參考高版本的Html.java,完整代碼如下:

          馨提示:細讀本文需要2分鐘,速讀僅需1分鐘。

          作者|李娜

          *本文為「Java聯盟」原創內容,轉載無需授權,請保留署名來源。

          前言

          上一節我們講到HTML是什么,一個網頁的基本架構是怎么樣子。但是往往一個網頁有很多標簽,分別代表不同的含義,當然如果你不懂的話何談編輯呢?所以這一節,開始講到HTML中的那些常見標簽。

          第二節 HTML 中的常見標簽

          首先我們先來了解一下 HTML 標簽的類型:

          HTML 標記標簽通常被稱為 HTML 標簽(HTML TAG)。

          1

          單標簽與雙標簽

          單標簽:單個標簽標記名稱

          無屬性值: 如: br / (表示換行)

          有屬性值: 如: hr width=80% / (表示水平線的寬占參照物的百分之八十)

          雙標簽:兩個標簽,成對出現。

          無屬性值: 標記名稱.../標記名稱

          如: title.../title

          有屬性值: 標記名稱 屬性=屬性值.../標記名稱

          如:fontsize7.../font

          注意:

          標簽的屬性與屬性之間以空格分隔,屬性不區分先后順序,且屬性不是必需要寫的。

          然后我們來了解下標題標簽。

          2

          標題標簽

          標題標簽:hx/hx

          其中“x”是1~6的數字代表字體的大小

          如下就是標題標簽

          h1我是標題1/h1

          h2我是標題2/h2

          h3我是標題3/h3

          h4我是標題4/h4

          h5我是標題5/h5

          h6我是標題6/h6

          執行實際效果圖如下:

          一般一篇文章只會使用一個 h1 標簽。

          3

          font標簽

          接下來是 font 標簽,比如說font size='5' color='#ff33cc'

          這是一個 font 標簽/font

          其中的 “ size “ 是字體的大小屬性這里把大小設置為 “ 5 ” ,“ color ” 是 font的顏色屬性,可以在 editplus 中選擇。

          font size='5' color='#ff33cc'

          效果展示:

          4

          段落,格式標簽

          p標簽是一個定義段落標簽

          pp 元素會自動在其前后創建一些空白。瀏覽器會自動添加這些空間,您也可以在樣式表中規定。/p

          功能 標記
          加粗 b文本/b
          傾斜 i文本/i
          加強語氣(加粗)strong文本/strong
          加強語氣(傾斜)em文本/em
          下劃線u文本/u
          刪除線 del文本/del
          上標 sup文本/sup
          下標 sub文本/sub

          換行br/

          執行效果圖如下:

          5

          超鏈接標簽

          這一節的最后介紹一下超鏈接標簽

          a標簽:我們有時候跳轉頁面就是a標簽實現的

          ahref=http://www.baidu.com百度/a

          這樣的話我們就可以跳轉到百度頁面了。

          最后給大家看看本節所有的源代碼以及執行效果圖

          源代碼

          執行效果圖

          好的這里給大家分享了常見的一些標簽想要學習到更多的標簽知識的小伙伴要記得關注我們的公眾號 我們會持續更新有關于HTML的文章的。

          有疑問?有想法?請留言!

          微信搜索關注 :java聯盟


          主站蜘蛛池模板: 精品福利一区3d动漫| 日本一区二区高清不卡| 国产精品熟女视频一区二区| 99精品久久精品一区二区| 精品国产AV一区二区三区| 日产亚洲一区二区三区| 夜色阁亚洲一区二区三区| 无码视频一区二区三区| 乱色精品无码一区二区国产盗| 一区二区三区在线观看视频| 波多野结衣中文一区| 精品一区二区三区视频在线观看| 亚洲一区在线视频观看| 老熟妇仑乱视频一区二区| 麻豆精品久久久一区二区| 波多野结衣一区二区三区aV高清| 日本一区午夜爱爱| 影院无码人妻精品一区二区| 日韩精品一区二三区中文| 日本丰满少妇一区二区三区| 九九无码人妻一区二区三区| 色欲综合一区二区三区| 亚洲熟女少妇一区二区| 久久综合一区二区无码| 无码8090精品久久一区| 无码国产精品一区二区免费式直播| 亚洲视频一区二区| 亚洲一区视频在线播放| 免费国产在线精品一区| 人妻无码一区二区视频| 无码AV动漫精品一区二区免费| 日韩美一区二区三区| 日韩精品免费一区二区三区| 精品一区二区三区四区电影| 相泽南亚洲一区二区在线播放| 色多多免费视频观看区一区| 秋霞鲁丝片一区二区三区| 亚洲熟女乱综合一区二区| 激情内射日本一区二区三区| 亚洲国产精品乱码一区二区| 精品无码一区在线观看|