亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

Python爬取知乎圖片代碼實現(xiàn)解析

系統(tǒng) 1943 0

首先,需要獲取任意知乎的問題,只需要你輸入問題的ID,就可以獲取相關(guān)的頁面信息,比如最重要的合計有多少人回答問題。

問題ID為如下標(biāo)紅數(shù)字

編寫代碼,下面的代碼用來檢測用戶輸入的是否是正確的ID,并且通過拼接URL去獲取該問題下面合計有多少答案。

            
import requests
import re
import pymongo
import time
DATABASE_IP = '127.0.0.1'
DATABASE_PORT = 27017
DATABASE_NAME = 'sun'
client = pymongo.MongoClient(DATABASE_IP,DATABASE_PORT)
db = client.sun
db.authenticate("dba", "dba")
collection = db.zhihuone # 準(zhǔn)備插入數(shù)據(jù)
BASE_URL = "https://www.zhihu.com/question/{}"
def get_totle_answers(article_id):
  headers = {
    "user-agent": "需要自己補全 Mozilla/5.0 (Windows NT 10.0; WOW64)"
  }
  with requests.Session() as s:
    with s.get(BASE_URL.format(article_id),headers=headers,timeout=3) as rep:
      html = rep.text
      pattern =re.compile( '
            
            ')
      s = pattern.search(html)
      print("查找到{}條數(shù)據(jù)".format(s.groups()[0]))
      return s.groups()[0]
if __name__ == '__main__':
  # 用死循環(huán)判斷用戶輸入的是否是數(shù)字
  article_id = ""
  while not article_id.isdigit():
    article_id = input("請輸入文章ID:")
  totle = get_totle_answers(article_id)
  if int(totle)>0:
    zhi = ZhihuOne(article_id,totle)
    zhi.run()
  else:
    print("沒有任何數(shù)據(jù)!")
          

完善圖片下載部分,圖片下載地址在查閱過程中發(fā)現(xiàn),存在json字段的content中,我們采用簡單的正則表達(dá)式將他匹配出來。細(xì)節(jié)如下圖展示

Python爬取知乎圖片代碼實現(xiàn)解析_第1張圖片

編寫代碼吧,下面的代碼注釋請仔細(xì)閱讀,中間有一個小BUG,需要手動把pic3修改為pic2這個地方目前原因不明確,可能是我本地網(wǎng)絡(luò)的原因,還有請在項目根目錄先創(chuàng)建一個imgs的文件夾,用來存儲圖片

            
  def download_img(self,data):
    ## 下載圖片
    for item in data["data"]:
      content = item["content"]
      pattern = re.compile('
            
            ')
      imgs = pattern.findall(content)
      if len(imgs) > 0:
        for img in imgs:
          match = re.search('
            
          

運行結(jié)果為

Python爬取知乎圖片代碼實現(xiàn)解析_第2張圖片

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 深夜免费福利视频 | 国产精品99一区二区三区 | 羞羞在线 | 国产欧美精品一区二区色综合 | 青草网址 | 高清欧美一级在线观看 | 成人午夜视频免费看欧美 | 国产精品综合一区二区 | 中文字幕久久网 | 日韩精品在线一区 | 日韩久草| 成人欧美一区二区三区黑人免费 | 久久精品一区二区三区四区 | a毛片a毛片a视频 | 天天插天天射 | 国产精品1 | 成年人免费毛片 | 国产精品免费综合一区视频 | 成人欧美视频在线观看播放 | 日本黄色录像视频 | 欧美日韩亚洲综合在线一区二区 | 久久这里只有精品18 | 国产福利第一页 | 成人国内精品久久久久影 | 国产成a人亚洲精v品久久网 | 久久久婷婷 | 水中色av综合 | 国产精品成人网 | 日本又黄又爽又色的视频免费 | 久久中文字幕综合婷婷 | 久久88香港三级台湾三级中文 | 中中文字幕亚州无线码 | 亚洲视频一区二区在线观看 | 色艺网| 成人在线a| 欧美网站www | 久久新地址 | 久久国产视频网 | 久久久91精品国产一区二区 | 手机在线一区二区三区 | 中文字幕一区在线 |