python爬取頁面內容,並統計指定欄位的數量

2021-09-11 15:34:07 字數 1586 閱讀 5062

整體思路:

1、獲取想要爬取頁面的url

2、應用requests beautifulsoup庫爬取到頁面內容,找到所要統計欄位的規律,以xml格式儲存到本地檔案中

3、讀取儲存的本地檔案內容

4、通過split切分獲取指定欄位的數量

#!/usr/bin/env python

# -*- coding: utf-8 -*-

import requests

from bs4 import beautifulsoup

#檔案存放路徑

filename = 'e:/003spider/testlist2.txt'

def get_html_content():

open_url = ''

headers =

res1 =requests.get(open_url, headers=headers)

#生成乙個beautifulsoup物件,後面查詢網頁內容時使用

soup1 = beautifulsoup(res1.text,'lxml')

#獲取指定標籤對的內容,獲取到的是乙個陣列

xml1 = soup1.find_all('li')

xml2 = soup1.find_all('p')

#通過迴圈將陣列中的內容列印出來,並儲存到本地檔案中,後面統計時會使用到

for i in range(len(xml1)):

msg = xml1[i].string

#為none的忽略掉

if not msg is none:

strmsg = str(msg)

test_file_write(strmsg)

for i in range(len(xml2)):

msg = xml2[i].string

if not msg is none:

strmsg = str(msg)

test_file_write(strmsg)

def test_file_write(strcontent):

f = open(filename,'a+')

f.write(strcontent)

f.close()

def test_file_read():

f1 = open(filename, 'r')

filecontet = f1.read()

f1.close()

return filecontet

def word_count_in_str(string,keyword):

return len(string.split(keyword))-1

if __name__ == '__main__':

get_html_content()

filecontet = test_file_read()

#統計「貢獻」二字在頁面**現的次數,體現出了做貢獻是眾測的不變宗旨

print('貢獻出現的次數:%s' % word_count_in_str(filecontet, '貢獻'))

後續:將統計資料儲存到excel中,方便查閱瀏覽。 

Python爬取網頁內容

其時序圖如圖所示。給定乙個要訪問的url,獲取這個html及內容,遍歷html中的某一類鏈結,如a標籤的href屬性,從這些鏈結中繼續訪問相應的html頁面,然後獲取這些html的固定標籤的內容,如果需要多個標籤內容,可以通過字串拼接,最後通過正規表示式刪除所有的標籤,最後將其中的內容寫入.txt檔...

python 爬取HTML內容並儲存到txt檔案內

updatetime 2020 12 08 16 53 author wz file get webdetails software pycharm used 爬取任意頁面中任意資料 import re import urllib.request from utils.log import logg...

python爬取靜態頁面示例 戰隊勝率統計

靜態頁面的爬取十分簡單,直接瀏覽器在頁面上右鍵,選擇 檢視源 然後利用相關的庫和正規表示式就能把想要的內容直接爬取。下面展示個我拿來解決問題的例項。遊戲王線上戰隊聯盟有很多戰隊,hx是其中比較出名的乙個隊伍。hx戰隊每天都會和其他戰隊進行友誼賽,每一場都會有3個以上的隊員出戰。每到月底,hx都會統計...