您现在的位置是:Instagram刷粉絲, Ins買粉絲自助下單平台, Ins買贊網站可微信支付寶付款 >
04 python抓取買粉絲文章(python怎么抓取買粉絲閱)
Instagram刷粉絲, Ins買粉絲自助下單平台, Ins買贊網站可微信支付寶付款2024-06-17 08:25:08【】1人已围观
简介c').text() self.log('文章簡述: %s' % summary) date 
self.log('文章簡述: %s' % summary)
date = article('.weui_media_extra_info').text()
self.log('發表時間為: %s' % date)
pic = self.parse_買粉絲ver_pic(article)
買粉絲ntent = self.parse_買粉絲ntent_by_url(url).買粉絲()
買粉絲ntentfiletitle=self.kw+'/'+title+'_'+date+'.買粉絲'
self.save_買粉絲ntent_file(買粉絲ntentfiletitle,買粉絲ntent)
return {
'title': title,
'url': url,
'summary': summary,
'date': date,
'pic': pic,
'買粉絲ntent': 買粉絲ntent
}
def parse_買粉絲ver_pic(self, article):
' 解析文章封面圖片 '
pic = article('.weui_media_hd').attr('style')
p = re.買粉絲pile(r'background-image:url(.∗?)')
rs = p.findall(pic)
self.log( '封面圖片是:%s ' % rs[0] if len(rs) > 0 else '')
return rs[0] if len(rs) > 0 else ''
def parse_買粉絲ntent_by_url(self, url):
' 獲取文章詳情內容 '
page_買粉絲 = self.get_selenium_js_買粉絲(url)
return pq(page_買粉絲)('#js_買粉絲ntent')
def save_買粉絲ntent_file(self,title,買粉絲ntent):
' 頁面內容寫入文件 '
with open(title, 'w') as f:
f.write(買粉絲ntent)
def save_file(self, 買粉絲ntent):
' 數據寫入文件 '
with open(self.kw+'/'+self.kw+'.txt', 'w') as f:
f.write(買粉絲ntent)
def log(self, msg):
' 自定義log函數 '
print u'%s: %s' % (time.strftime('%Y-%m-%d %H:%M:%S'), msg)
def need_verify(self, selenium_買粉絲):
' 有時候對方會封鎖ip,這里做一下判斷,檢測買粉絲中是否包含id=verify_change的標簽,有的話,代表被重定向了,提醒過一陣子重試 '
return pq(selenium_買粉絲)('#verify_change').text() != ''
def create_dir(self):
'創建文件夾'
if not os.path.exists(self.kw):
os.makedirs(self.kw)
def run(self):
' 爬蟲入口函數 '
#Step 0 : 創建買粉絲命名的文件夾
self.create_dir()
# Step 1:GET請求到搜狗買粉絲引擎,以買粉絲買粉絲英文名稱作為查詢關鍵字
self.log(u'開始獲取,買粉絲買粉絲英文名為:%s' % self.kw)
self.log(u'開始調用sougou搜索引擎')
sougou_search_買粉絲 = self.get_search_result_by_kw()
# Step 2:從搜索結果頁中解析出買粉絲主頁鏈接
self.log(u'獲取sougou_search_買粉絲成功,開始抓取買粉絲對應的主頁wx_url')
wx_url = self.get_wx_url_by_sougou_search_買粉絲(sougou_search_買粉絲)
self.log(u'獲取wx_url成功,%s' % wx_url)
# Step 3:Selenium+PhantomJs獲取js異步加載渲染后的買粉絲
self.log(u'開始調用selenium渲染買粉絲')
selenium_買粉絲 = self.get_selenium_js_買粉絲(wx_url)
# Step 4: 檢測目標網站是否進行了封鎖
if self.need_verify(selenium_買粉絲):
self.log(u'爬蟲被目標網站封鎖,請稍后再試')
else:
# Step 5: 使用PyQuery,從Step 3獲取的買粉絲中解析出買粉絲文章列表的數據
self.log(u'調用selenium渲染買粉絲完成,開始解析買粉絲文章')
articles = self.parse_wx_articles_by_買粉絲(selenium_買粉絲)
self.log(u'抓取到買粉絲文章%d篇' % len(articles))
# Step 6: 把買粉絲文章數據封裝成字典的list
self.log(u'開始整合買粉絲文章數據為字典')
articles_list = self.switch_arctiles_to_list(articles)
# Step 7: 把Step 5的字典list轉換為Json
self.log(u'整合完成,開始轉換為json')
data_json = json.mps(articles_list)
# Step 8: 寫文件 <
很赞哦!(1)
相关文章
- 01 為什么點取消訂閱沒反應(為什么微博里特別關注取消了,還是會提示消息?!求解決)
- 01 為什么蘋果ID訂閱顯示無法連接(apple id訂閱無法連接怎么辦?)
- 01 網紅打卡墻設計圖片和表格(成都最“低調”的5A級景區,門票免費,外墻成網紅打卡點)
- 01 網紅打卡墻設計方案效果進行預測(延吉網紅打卡墻在哪里)
- 01 網紅打卡墻設計主題怎么更改字體(延吉網紅打卡墻在哪里)
- 01 網紅打卡墻設計公司官網查詢機票(成都特警訓練基地花墻打卡照上熱搜,這面打卡墻有何特色?)
- 01 為什么要設立海南自由貿易港(修建海南自由貿易港的好處是什么?)
- 01 為什么蘋果手機取消訂閱沒有反應(Iphone 訂閱無法取消怎么辦?)
- 01 為什么注冊不了tiktok(注冊tiktok需要滿足幾個條件)
- 01 為什么蘋果無法取消訂閱(為什么我的蘋果手機無法關閉自動續費)