python3之微信文章爬蟲

2022-05-28 17:09:11 字數 3323 閱讀 2440

前提:

python3.4

windows

正題:爬蟲的第一步都是先手工操作一遍(閒話)

當你跳到第二頁時可以看到「

好了,url可以得到了

1 url = ''+search+'&page='+str(page) 

1 search = urllib.request.quote(search)

page是用來迴圈的

1 for page in range(1,pagenum+1):

2 url = ''+search+'&page='+str(page)

完整的url已經得到了,接下來訪問url,獲得其中的資料(建立opener物件,新增header())

1 importurllib.request

2 header = ('user-agent','mozilla/5.0')

3 opener =urllib.request.build_opener()

4 opener.addheaders =[header]

5 urllib.request.install_opener(opener)

6 data = urllib.request.urlopen(url).read().decode()

得到頁面內容,採用正則表達獲取相關資料

1 importre

2 finddata = re.compile('(.*?)').findall(data)

3 #finddata = [('',''),('','')]

1 title = title.replace('','')

2 title = title.replace('','')

1 link = link.replace('amp;','')

將處理後的標題和鏈結儲存在列表中

如此搜尋的標題和鏈結都得到了,接下來匯入excel

先建立excel

1 importxlsxwriter

2 workbook = xlsxwriter.workbook(search+'.xlsx')

將title_link中的資料匯入excel

1 for i in range(0,len(title_link),2):

2 worksheet.write('a'+str(i+1),title_link[i+1])

3 worksheet.write('c'+str(i+1),title_link[i])

4 workbook.close()

完整**:

1 '''

2 python3.4 + windows

3 羽凡-2017/7/11-

5 每個頁面10秒延遲,防止被限制

6 import urllib.request,xlsxwriter,re,time

7 '''

8 importurllib.request

10 pagenum = int(input('搜尋頁數:'))

11 importxlsxwriter

12 workbook = xlsxwriter.workbook(search+'.xlsx')

13 search =urllib.request.quote(search)

14 title_link =

15 for page in range(1,pagenum+1):

16 url = ''+search+'&page='+str(page)

17 importurllib.request

18 header = ('user-agent','mozilla/5.0')

19 opener =urllib.request.build_opener()

20 opener.addheaders =[header]

21 urllib.request.install_opener(opener)

22 data =urllib.request.urlopen(url).read().decode()

23 importre

24 finddata = re.compile('(.*?)').findall(data)

25 #finddata = [('',''),('','')]

26 for i inrange(len(finddata)):

27 title = finddata[i][1]

28 title = title.replace('','')

29 title = title.replace('','')

30 try:

31 #標題中可能存在引號

32 title = title.replace('「','"')

33 title = title.replace('」','"')

34 except:

35 pass

36 link =finddata[i][0]

37 link = link.replace('amp;','')

40 print('第'+str(page)+'頁')

41 importtime

42 time.sleep(10)

44 worksheet.set_column('a:a',70)

45 worksheet.set_column('c:c',100)

46 bold = workbook.add_format()

47 worksheet.write('a1','標題',bold)

48 worksheet.write('c1','鏈結',bold)

49 for i in range(0,len(title_link),2):

50 worksheet.write('a'+str(i+1),title_link[i+1])

51 worksheet.write('c'+str(i+1),title_link[i])

52 workbook.close()

53 print('匯入excel完畢!')

python3爬蟲之開篇

寫在前面的話 折騰爬蟲也有一段時間了,從一開始的懵懵懂懂,到現在的有一定基礎,對於這一路的跌跌撞撞,個人覺得應該留下一些文本性的東西,畢竟好記性不如爛筆頭,而且畢竟這是吃飯的傢伙,必須用心對待才可以,從今天起,我將會把關於爬蟲的東西進行乙個整理,以供後期的查閱,同時也想將自己的一點點經驗分享給大家。...

抓取知網摘要 搜狗微信文章 搜狗新聞的爬蟲

個人專案,只支援python3.需要說明的是,本文中介紹的都是小規模資料的爬蟲 資料量 1g 大規模爬取需要會更複雜,本文不涉及這一塊。另外,細節就不過多說了,只將乙個大概思路以及趟過的坑。本文中涉及的阿布雲ip隧道及雲打碼平台需要自己註冊,並在code中相應部分取消注釋。需要在每個模組中建立out...

python3爬蟲實戰(3)

今天心血來潮去爬取了一下招聘 的實時招聘資訊。是 選的條件是北京,實習生,計算機軟體。分析 之後發現還是很容易的,不過過程中出了不少小問題,在這裡分享一下。想要爬取的是類似的表單內容。是在ul的li裡。用beautifulsoup解析之後,tem ul bsoj.find ul 存下整個ul元素。對...