macの簡単な使い方Pythonを使ってネット爬虫類を行う方法(1)


まずはマスターしなければならないクラスをいくつか紹介します.  Requests:HTTP for Humans
このような一言で自分を紹介し、人間のために使うHTTPライブラリです.
http://docs.python-requests.org/zh_CN/latest/user/quickstart. 中国語の文書
 
Beautiful soup
Beautiful Soup解析サイトのソースコードで正則の代わりになります.
https://www.crummy.com/software/BeautifulSoup/bs4/doc/index.zh.html 中国語の文書
 
開発環境:Mac 
IDE:PyCharm(個人的にはとても使いやすいと思います)
乗り物:Safari
第一歩は簡単な爬虫類を行うことです. https://www.qiushibaike.com/text/
mac下 如何简单粗暴 使用Python进行网络爬虫(1)_第1张图片
私たちが必要なのは、赤枠の中のこれらの文字の残りの広告です.私たちは根っこを押さえてもいいです.どうすればいいですか? Safari遊覧器の中で右クリックして検査要素mac下 如何简单粗暴 使用Python进行网络爬虫(1)_第2张图片をクリックします. 
はい、必要な内容はこの中にあります.  しかし、これはタイトルの内容だけです.クリックして詳細ページを開いてください.
mac下 如何简单粗暴 使用Python进行网络爬虫(1)_第3张图片
//articale/12341501 このつぎはぎに注意する  https://www.qiushibaike.com/article/121341501    接頭語+接尾語は笑い話ごとの詳細です.  私たちの一番重要な目的はこの拡張子のリストを見つけることです. 
コードの作成を始める時、必要なクラスのライブラリをインストールしたいです.ネット上の多くの教程は命令行からインストールしてもいいですが、Pycharmを使うともっと便利な方法があります.
私が使っているIDEは、PyCharmインストールrequest Beautiful Soup方法です.Pycharm->Preferencesをクリックしてください.
mac下 如何简单粗暴 使用Python进行网络爬虫(1)_第4张图片
mac下 如何简单粗暴 使用Python进行网络爬虫(1)_第5张图片
Install Packageをクリックしてください. インストールできます
じゃ、これから本題に入ります. 
mac下 如何简单粗暴 使用Python进行网络爬虫(1)_第6张图片
私たちが必要なhrefは全部あります. content-leftこの下  彼を解決します. 
mac下 如何简单粗暴 使用Python进行网络爬虫(1)_第7张图片
説明してください このシミュレーション要求 私がcharlesで包んだものです.あなたが対応する要求に変えられます. 自分で一つのチャールズをダウンロードして解決すればいいです.  divタグを解析します. content-leftの下の articaleはリスト配列を取得しました.    つまり、私たちが必要とする文章の詳細リンクです. 
上記のコードに従って実行した後:
mac下 如何简单粗暴 使用Python进行网络爬虫(1)_第8张图片
各リストに対応する記事の詳細リンクを入手しました. 
 
次に私達は更にすべての詳細のリンクをつかんで行きます. 
mac下 如何简单粗暴 使用Python进行网络爬虫(1)_第9张图片
観察して文章がdivにあることを知った. クラス=「content」の中 作者はhrefの中にいます. 登り続ける 
mac下 如何简单粗暴 使用Python进行网络爬虫(1)_第10张图片
mac下 如何简单粗暴 使用Python进行网络爬虫(1)_第11张图片
キャプチャされたデータは上記の通りです.  このように簡単なバッグ教程を通して完成しました.   技術的な内容は多くないですが.   私と同じように爬虫類の勉強を始めたばかりの友達に.
完全コードは以下の通りです
import requests
from bs4 import BeautifulSoup
import html5lib
import pymysql

def getRequestUrl():
    #    
    headers = {"User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/11.1.2 Safari/605.1.15"}
    response = requests.get('https://www.qiushibaike.com/text',headers=headers)
    soup = BeautifulSoup(response.content, 'html5lib')           #    
    listSoup = soup.find('div',id='content-left')                #    listSoup
    article_list = listSoup.find_all('div', class_="article")    #      

    for list in article_list:
        #        
        detailUrl = list.find(class_='contentHerf')['href']
        getDetailUrl(detailUrl)


def getDetailUrl(url):
    #      
    detailUrl = ('https://www.qiushibaike.com%s'%url)
    print(detailUrl)
    headers = {
        "User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/11.1.2 Safari/605.1.15"}
    response = requests.get(detailUrl,headers=headers)
    #result = response.content.decode('utf-8')   #    

    soup = BeautifulSoup(response.content, 'html5lib')
    author = soup.find('a',class_='side-left-userinfo').find('img')['alt']  #    
    print('  :%s'%author)
    content = soup.find('div',class_='content').get_text()  #    
    print('  :%s'%content)

if __name__ =='__main__':

    getRequestUrl()
 
爬虫類後続の文章は略書でしか発表しません.csdnはもう更新しません. 
https://www.jianshu.com/u/3b35ac7a2ce1   みんなを歓迎して私の略書に来ます.