新人チュートリアルコードの画像をクロールリクエストとBeautifulSoupを使用し、マークダウン形式として保存

オープンブック試験やデザインパターン、私は少しより多くの情報を準備したい、その後、コードや画像をクロール爬虫類を書いて、さらなる処理のための巧妙なフォーマットがあり、最終的には値下げ形式になって

import requests 
from bs4 import BeautifulSoup

スープには、この工場モデルのhtmlページ、オブジェクト - まず、ルーキーのチュートリアルを取得

r = requests.get("https://www.runoob.com/design-pattern/factory-pattern.html")
#获取反馈信息 200为正常
r.status_code
r.encoding = "utf-8"
soup=BeautifulSoup(r.text,'lxml')
print(soup.prettify())

リンクをクロールして、URLのリストを取得するために、これのstartsWith()フィルタを使用して、「/デザイン」の最初に要求されていることを確認し

html_list=[]
for a in soup.find_all('a'):
    if(a['href'].startswith('/design')):
        print(a['href'])
        html_list.append(a['href'])

各ページのクロール機能、コメントの最初の値下げ言語、3つのスラッシュ、便利なフォーマットとのコメントを書きます。

+def fonepage(add):
    baseurl="https://www.runoob.com"
    url=baseurl+add
    r = requests.get(url)
    #获取反馈信息 200为正常
    r.status_code
    r.encoding = "utf-8"
    soup=BeautifulSoup(r.text,'lxml')
    lis=soup.find_all(attrs={'class':'example'})
    print('///## '+add)
    img=soup.find_all('img')
    print('///![]('+baseurl+img[0]['src']+')')
    print('///```')
    for son in lis:
        for a in son.find_all('span'):
            print(a.string,end=' ')
    print('\n')
    print('///```')

次に、ページでクロールすることができます

for i in range(2,len(html_list)):
    fonepage(html_list[i])

最後に、処理は、メモ帳続い利用IDEAフォーマットは、すべての「///」という文字列を削除し、それがマークダウン形式に変換されます。

結果は以下の通りである:https://www.cnblogs.com/Tony100K/p/11741212.html

おすすめ

転載: www.cnblogs.com/Tony100K/p/11742333.html