91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

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

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

利用requests+BeautifulSoup爬取網頁關鍵信息

發布時間:2020-08-10 23:47:04 來源:ITPUB博客 閱讀:124 作者:RedCompu93 欄目:編程語言

一、requests庫基礎知識

  1. Requests的方法 

    利用requests+BeautifulSoup爬取網頁關鍵信息  

  2. requests庫的response對象

    利用requests+BeautifulSoup爬取網頁關鍵信息

二、爬取網站所需信息

1.訪問網站,如圖1-1所示:

利用requests+BeautifulSoup爬取網頁關鍵信息

圖1-1

2.點擊子頁面,審查網頁元素,部分內容如圖1-2所示:

利用requests+BeautifulSoup爬取網頁關鍵信息

圖1-2

3.實現代碼如下:

#coding:utf-8
import requests
from bs4 import BeautifulSoup
import xlsxwriter
#定義網頁內容獲取函數GET_HTML_CONTENT
def GET_HTML_CONTENT(url):
    #定義user_agent,模擬瀏覽器訪問網頁
    user_agent = 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) \
    Chrome/63.0.3239.132 Safari/537.36'
    headers = {'User-Agent':user_agent}
    r = requests.get(url,headers=headers)
    #獲取網頁內容
    html_str = r.text
    return html_str
    
#定義子網頁URL獲取函數GET_CHILD_URL    
def GET_CHILD_URL(content):
    data = BeautifulSoup(content, "html.parser")
    genre_session = data.find_all('li', attrs={'class': "medium listbox group"})
    #定義一個空列表childurl存放類別名稱及子網頁URL
    childurl = []
    for session in genre_session:
        elements = session.find_all('h4', attrs={'class': "heading"})
        for element in elements:
            genre = {}
            genre['name'] = element.find('a').text
            genre['nextpage'] = element.find('a')['href']
            childurl.append(genre)
    return childurl
    
#定義子網頁內容處理函數GET_CHILD_INFO    
def GET_CHILD_INFO(content,kind):
    data = BeautifulSoup(content, "html.parser")
    book_session = data.find_all('ol', attrs={'class': "alphabet fandom index group "})
    items = book_session[0].find_all('ul', attrs={'class': "tags index group"})
    #定義一個空列表books存放書的類別、名稱及評論數
    books = []
    for item in items:
        book = {}
        book['kinds'] = kind
        book['name'] = item.find('a').text
        book['reviews'] = item.text.strip().split('\n')[-1].strip().strip('()')
        books.append(book)
    return books
    
if __name__ == '__main__':
    url = 'https://archiveofourown.org/media'
    content = GET_HTML_CONTENT(url)
    childurl = GET_CHILD_URL(content)
    row = 1
    col = 0
    data = [[u'類別',u'名稱',u'評論數']]
    workbook = xlsxwriter.Workbook("data.xlsx")
    worksheet = workbook.add_worksheet()
    worksheet.write_row(0,0,data[0])
    for k in childurl:
        kind = k['name']
        nexturl = k['nextpage']
        geturl = 'https://archiveofourown.org' + nexturl
        txt = GET_HTML_CONTENT(geturl)
        books = GET_CHILD_INFO(txt,kind)
        for info in books:
            worksheet.write(row, col, info['kinds'])
            worksheet.write(row, col + 1, info['name'])
            worksheet.write(row, col + 2, info['reviews'])
            row += 1
    workbook.close()

4.運行結果如圖1-3所示:

利用requests+BeautifulSoup爬取網頁關鍵信息

                                 圖1-3

向AI問一下細節

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

AI

根河市| 晋中市| 新民市| 柳州市| 县级市| 林口县| 海宁市| 潞城市| 日喀则市| 黄梅县| 辽宁省| 新闻| 四川省| 敖汉旗| 平原县| 南部县| 巴彦县| 沾化县| 石屏县| 萨嘎县| 肥乡县| 全椒县| 泸水县| 靖西县| 合川市| 梧州市| 富阳市| 溧水县| 康平县| 青河县| 高陵县| 犍为县| 济南市| 怀来县| 高要市| 湖口县| 华亭县| 德兴市| 雅江县| 门头沟区| 井冈山市|