python爬蟲抓取51cto博客大牛的文章保存到本地excel文件


腳本一:

#!/usr/bin/env python
#coding:utf-8
from  bs4  import  BeautifulSoup
import urllib
import re
art = {}
for page in range(1,5):
page = str(page)
url = 'http://yujianglei.blog.51cto.com/all/7215578/page/'  + page
response = urllib.urlopen(url).read()
response = unicode(response,'GBK').encode('UTF-8')
soup = BeautifulSoup(response,'html.parser')
a_tag = soup.find_all(href=re.compile("^/\d{7}/\d{7}$"))
for i  in a_tag:
art_name = i.string
string = str(i)
art_url = 'http://yujianglei.blog.51cto.com' + string[9:25]
art[art_name]=art_url
for k,v in art.items():
print k,'      ',v
#上面代碼:使用字符串,只打印出文章和文章的url
##########################################################################################################

腳本二:

from  bs4  import  BeautifulSoup
import urllib
import re
art = {}
for page in range(1,5):
page = str(page)
url = 'http://yujianglei.blog.51cto.com/all/7215578/page/'  + page
response = urllib.urlopen(url).read()
response = unicode(response,'GBK').encode('UTF-8')
soup = BeautifulSoup(response,'html.parser')
a_tag = soup.find_all(href=re.compile("^/\d{7}/\d{7}$"))
for i  in a_tag:
art_name = i.string
art_url  = 'http://yujianglei.blog.51cto.com' + i['href']
art[art_name]=art_url
for k,v in art.items():
print k,'      ',v
#上面代碼:Beautiful Soup + 字符串,只打印出文章和文章的url。
##############################################################################################################


腳本三:

from  bs4  import  BeautifulSoup
import urllib
import re
import xlsxwriter
k_art_name = []
v_art_url = []
for page in range(1,5):
page = str(page)
url = 'http://yujianglei.blog.51cto.com/all/7215578/page/'  + page
request = urllib.urlopen(url)
response = request.read()
response = unicode(response,'GBK').encode('UTF-8')
soup = BeautifulSoup(response,'html.parser')
a_tag = soup.find_all(href=re.compile("^/\d{7,}/\d{7,}$"))
for i  in a_tag:
print i
art_name = i.string
art_url  = 'http://yujianglei.blog.51cto.com' + i['href']
k_art_name.append(art_name)
v_art_url.append(art_url)
#文件的基本名稱和文件類型描述
workbook = xlsxwriter.Workbook(u'51cto博客.xlsx')
worksheet = workbook.add_worksheet(u'於江磊')
title = [u'文章列表',u'文章連接']
#表頭邊框,背景色,單元格內容位置,單元格字體加粗
format_title = workbook.add_format()
format_title.set_border(1)
format_title.set_bg_color('#cccccc')
format_title.set_align('center')
format_title.set_bold()
format_title.set_size(15)
#表題
format_body = workbook.add_format()
format_body.set_border()
format_body.set_align('left')
#單元格高度
worksheet.set_row(0,40)
#單元格寬度
worksheet.set_column('A:B',50)
#寫入文件標題
worksheet.write_row('A1',title,format_title)
#寫入文件主體
worksheet.write_column('A2',k_art_name,format_body)
worksheet.write_column('B2',v_art_url,format_body)
workbook.close()
#上面的代碼加上字符串+BeautifulSoup,保存文章名和文章的url到一個excel文件中。
###########################################################################


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章