亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么用python寫網絡爬蟲

發布時間:2021-04-25 14:32:45 來源:億速云 閱讀:132 作者:小新 欄目:開發技術

小編給大家分享一下怎么用python寫網絡爬蟲,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

Python主要用來做什么

Python主要應用于:1、Web開發;2、數據科學研究;3、網絡爬蟲;4、嵌入式應用開發;5、游戲開發;6、桌面應用開發。

新浪微博需要登錄才能爬取,這里使用m.weibo.cn這個移動端網站即可實現簡化操作,用這個訪問可以直接得到的微博id。

分析新浪微博的評論獲取方式得知,其采用動態加載。所以使用json模塊解析json代碼

單獨編寫了字符優化函數,解決微博評論中的嘈雜干擾字符

本函數是用python寫網絡爬蟲的終極目的,所以采用函數化方式編寫,方便后期優化和添加各種功能

# -*- coding:gbk -*-
import re
import requests
import json
from lxml import html
#測試微博4054483400791767
comments=[]

def get_page(weibo_id):
  url='https://m.weibo.cn/status/{}'.format(weibo_id)
  html=requests.get(url).text
  regcount=r'"comments_count": (.*?),'
  comments_count=re.findall(regcount,html)[-1]
  comments_count_number=int(comments_count)
  page=int(comments_count_number/10)
  return page-1

def opt_comment(comment):
  tree=html.fromstring(comment)
  strcom=tree.xpath('string(.)')
  reg1=r'回復@.*?:'
  reg2=r'回覆@.*?:'
  reg3=r'//@.*'
  newstr=''
  comment1=re.subn(reg1,newstr,strcom)[0]
  comment2=re.subn(reg2,newstr,comment1)[0]
  comment3=re.subn(reg3,newstr,comment2)[0]
  return comment3

def get_responses(id,page):
  url="https://m.weibo.cn/api/comments/show?id={}&page={}".format(id,page)
  response=requests.get(url)
  return response

def get_weibo_comments(response):
  json_response=json.loads(response.text)
  for i in range(0,len(json_response['data'])):
    comment=opt_comment(json_response['data'][i]['text'])
    comments.append(comment)


weibo_id=input("輸入微博id,自動返回前5頁評論:")
weibo_id=int(weibo_id)
print('\n')
page=get_page(weibo_id)
for page in range(1,page+1):
  response=get_responses(weibo_id,page)
  get_weibo_comments(response)

for com in comments:
  print(com)
print(len(comments))

以上是“怎么用python寫網絡爬蟲”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

巴马| 公主岭市| 衡南县| 嫩江县| 古田县| 常州市| 客服| 夹江县| 澄迈县| 普宁市| 周宁县| 蓝田县| 闵行区| 万全县| 龙海市| 施秉县| 奇台县| 莱西市| 渝中区| 高台县| 延川县| 合水县| 聂拉木县| 体育| 航空| 改则县| 兰州市| 望城县| 沾益县| 洛隆县| 渝北区| 禹城市| 鄂托克旗| 吉木萨尔县| 凌云县| 孟州市| 拜泉县| 虞城县| 都匀市| 黄石市| 木里|