<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      知乎爬蟲之4:抓取頁面數(shù)據(jù)

      git爬蟲項(xiàng)目地址( 終于上傳代碼了~~~~關(guān)注和star在哪里):(已完結(jié))

      附贈(zèng)之前爬取的數(shù)據(jù)一份(mysql): 鏈接:只下載不點(diǎn)贊,不star,差評(píng)差評(píng)~藍(lán)瘦香菇)

      本文由博主原創(chuàng),轉(zhuǎn)載請(qǐng)注明出處:知乎爬蟲之4:抓取頁面數(shù)據(jù)

      咱們上一篇分析了知乎的登陸請(qǐng)求和如何拿到粉絲/關(guān)注的請(qǐng)求,那么咱們這篇就來研究下如何拿利用Jsoup到咱們想要的數(shù)據(jù)。
      那么咱們說下,首先請(qǐng)求關(guān)注者和粉絲者是pcweb版本的,但是獲取頁面的是手機(jī)頁面的。
      好,正題:

      1.什么是Jsoup

      jsoup 是一款Java 的HTML解析器,可直接解析某個(gè)URL地址、HTML文本內(nèi)容。它提供了一套非常省力的API,可通過DOM,CSS以及類似于jQuery的操作方法來取出和操作數(shù)據(jù)。

      2. HttpClient請(qǐng)求模擬

      HttpClient 是 Apache Jakarta Common 下的子項(xiàng)目,可以用來提供高效的、最新的、功能豐富的支持 HTTP 協(xié)議的客戶端編程工具包,并且它支持 HTTP 協(xié)議最新的版本和建議。

      3.走起頁面

      首先模擬手機(jī)瀏覽器的UA。就是讓咱們打開的頁面返回的是移動(dòng)端的頁面效果,那么最應(yīng)該怎么怎么做呢?其實(shí)服務(wù)器判定你是ie還是chrome還是firefox是根據(jù)請(qǐng)求頭里面的UA實(shí)現(xiàn)的,因此咱們要找一個(gè)手機(jī)瀏覽器的UA。。
      咱們可以某度一下或者直接在瀏覽器里面直接f12,模擬移動(dòng)端,然后看請(qǐng)求參數(shù):

      User-Agent:Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.76 Mobile Safari/537.36
      

      妥妥的沒問題:


      那咱們?nèi)绾螌⑦@句體現(xiàn)到程序里面呢?
      簡(jiǎn)單,在咱們拿到get對(duì)象后直接設(shè)置:

       httpGet.setHeader("User-Agent", "Mozilla/5.0 
              (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 
              (KHTML, like Gecko) Chrome/46.0.2490.76 Mobile Safari/537.36");
      

      就ok了,然后咱們就可以用jsoup來拿咱們想要的元素了,jsoup的語法和jq如出一轍。
      咱們直接對(duì)著頁面,右擊咱們想要的元素,選擇審查元素,然后用jq的選擇器選出來就好了。
      可以參考jQuery 選擇器

      4.拿到關(guān)注者

      直接get咱們之前分析的請(qǐng)求地址

      https://www.zhihu.com/api/v4/members/Sweets07/followers?per_page=10&
      include=data%5B%2A%5D.employments%2Ccover_url%2Callow_message%2Canswer_coun
      t%2Carticles_count%2Cfavorite_count%2Cfollower_count%2Cgender%2Cis_followe
      d%2Cmessage_thread_token%2Cis_following%2Cbadge%5B%3F%28type%3Dbest_answerer
      %29%5D.topics&limit=10&offset=30
      

      不過要記得替換用戶名字和在請(qǐng)求頭里加入cookie的最后一段zc_0
      然后請(qǐng)求數(shù)據(jù)返回的是json

      {
        "paging": {
          "is_end": false,
          "next": "https://www.zhihu.com/api/v4/members/Sweets07/followers?per_page=10&include=data%5B%2A%5D.answer_count%2Carticles_count%2Cfollower_count%2Cis_followed%2Cis_following%2Cbadge%5B%3F%28type%3Dbest_answerer%29%5D.topics&limit=10&offset=20",
          "previous": "https://www.zhihu.com/api/v4/members/Sweets07/followers?per_page=10&include=data%5B%2A%5D.answer_count%2Carticles_count%2Cfollower_count%2Cis_followed%2Cis_following%2Cbadge%5B%3F%28type%3Dbest_answerer%29%5D.topics&limit=10&offset=0",
          "is_start": false,
          "totals": 398
        },
        "data": [
          {
            "is_followed": true,
            "avatar_url_template": "https://pic1.zhimg.com/da8e974dc_{size}.jpg",
            "name": "陳曉峰",
            "url": "",
            "type": "people",
            "user_type": "people",
            "answer_count": 0,
            "url_token": "chen-xiao-feng-84",
            "headline": "阿里巴巴,分布式數(shù)據(jù)庫,",
            "avatar_url": "https://pic1.zhimg.com/da8e974dc_is.jpg",
            "is_following": false,
            "is_org": false,
            "follower_count": 14,
            "badge": [],
            "id": "ff02ea0544901a9ddfcb7ba60c73b673",
            "articles_count": 0
          }
        ]
      }
      

      這個(gè)數(shù)據(jù)包括了下次請(qǐng)求地址,上次請(qǐng)求地址,時(shí)候是開始,時(shí)候是結(jié)束,共有多少粉絲,關(guān)注人基本信息,
      因此咱們可以在一個(gè)while里來獲得所有粉絲數(shù):
      流程:

      1. 第一次獲取數(shù)據(jù)
      2. 獲取is_end字段
      3. 判斷is_end時(shí)候?yàn)閠rue
      4. 根據(jù)is_end判斷是否繼續(xù)循環(huán)
      5. 如果循環(huán),更新is_end,更新下次請(qǐng)求連接

      一套下來,就能拿到一個(gè)用戶的所有粉絲了。


      吾愛Java(QQ群):170936712(點(diǎn)擊加入)

      posted @ 2017-01-06 08:53  菜狗_無知  閱讀(1980)  評(píng)論(0)    收藏  舉報(bào)
      主站蜘蛛池模板: 日本高清成本人视频一区| 午夜福利日本一区二区无码| 丰满少妇特黄一区二区三区| 国产精品一区二区三区蜜臀| 亚洲精品国模一区二区| 波多野结衣久久一区二区| 日本久久精品一区二区三区| 国产首页一区二区不卡| 亚洲国产日韩a在线播放 | 国产短视频一区二区三区| 9久久精品视香蕉蕉| 国产午精品午夜福利757视频播放| 亚洲熟妇无码av另类vr影视| 大胸美女吃奶爽死视频| 国产明星精品无码AV换脸 | 亚洲人成网站18禁止无码| 迁安市| 亚洲av无码国产在丝袜线观看| 欧美自拍另类欧美综合图片区| 蓬莱市| 精品国产女同疯狂摩擦2| 中文字幕在线亚洲日韩6页| 国产av国片精品一区二区| 亚洲欧美人成人让影院| 大胆欧美熟妇xxbbwwbw高潮了 | 国产在线无码不卡播放| 99热精品国产三级在线观看| 熟女视频一区二区三区嫩草| 国产成人一区二区三区在线| 97人人添人澡人人爽超碰| 国产香蕉久久精品综合网| 亚洲成aⅴ人在线观看| 高级艳妇交换俱乐部小说| 国产黄色一区二区三区四区| 欧美z0zo人禽交另类视频| 国产午夜精品理论大片| 视频一区二区三区自拍偷拍| 国产微拍一区二区三区四区| 午夜免费视频国产在线| 亚洲综合av一区二区三区| 一道本AV免费不卡播放|