Python爬蟲 劍指Offer題目目錄獲取

2021-10-05 17:59:44 字數 1551 閱讀 7262

import requests                     #獲取請求

from bs4 import beautifulsoup as bs #解析網頁,比正規表示式好用太多了

num =

1def

main

( url )

: session = requests.session(

) r=session.get(url)

html=r.text

bf=bs(html,

"lxml"

)#使用bs經行資訊的獲取

text=bf.find_all(

'td'

,class_ =

'txt-left'

) tag =

""global num

for i in text:

if(i.a==

none):

tag=i.text.replace(

"\n",""

)continue

name =

"#### "

+"("

+str

(num)

+") "

+i.text.replace(

"\n",""

)+'('+tag+

')\n'

#題目名

num+=

1 url =

''+i.a.attrs[

'href'

]#題目鏈結

url =

'[題目鏈結]('

+url+

')\n'

tmp = name + url +

'\n'

+'題解:'

+'\n\n'

+'**:'

+'\n\n'

write_text(

'1.txt'

,tmp)

defwrite_text

( name , text)

:file

=open

(str

(name)

,'a'

)#開啟檔案,覆蓋寫檔案

file

.write(

str(text)

)#寫入檔案

file

.flush(

)#重新整理緩衝區

file

.close(

)#關閉檔案

if __name__ ==

'__main__'

:for i in

range(4

):url=

"ta/coding-interviews?query=&asc=true&order=&tagquery=&page="

+str

(i+1

) main(url)

""" html 文字結構

陣列二維陣列中的查詢

4210420

24.20%

"""

劍指offer 矩形覆蓋 python

我們可以用2 1的小矩形橫著或者豎著去覆蓋更大的矩形。請問用n個2 1的小矩形無重疊地覆蓋乙個2 n的大矩形,總共有多少種方法?假設是乙個2 8的大矩形有f 8 種放的方法,當第乙個豎著放,那後面就有f 7 種放的方法 當第乙份橫著放,而下面那個空間也必須橫著放,剩下的就有f 6 種放的方法,那就總...

python 醜數 劍指offer

把只包含質因子2 3和5的數稱作醜數 ugly number 例如6 8都是醜數,但14不是,因為它包含質因子7。習慣上我們把1當做是第乙個醜數。求按從小到大的順序的第n個醜數。思路 最直接的暴力解法是從1開始依次判斷數字是否為醜數,直到達到要求的醜數個數。當然這種方法肯定是會tle的,所以我們分析...

python 劍指Offer 替換空格

牛客oj 替換空格 description 思路一 coding utf 8 占用記憶體 5860k class solution s 源字串 defreplacespace self,s l for i in s if i l 20 else l i return l思路二 coding utf ...