还是跟着极客学院学习爬虫。
今天学习单线程爬虫,老师让爬一个众筹项目网站 https://www.crowdfunder.com。可是由于视频是去年的,视频里老师讲的这个网站的requests method是post,但是今天我查看网站看到的是get(或许我没看对)。
无所谓了,我就看着老师的(反正不是能看懂),自己用最笨的方法搞了个,自动爬取分页码的标题。又由于没有登陆,所以只能爬去部分。所以若是想爬取全部,还要学习如何自动登陆。
# -*- coding: utf-8 -*-
"""
Created on Mon May 9 14:28:45 2016
@author: s
"""
import requests
import re
header = {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.94 Safari/537.36'}
url = r'https://www.crowdfunder.com/?page=1'
i = 1
#得到分页网址
def newurls():
global i, html
newurl = re.sub('page=(\d+)', 'page='+str(i), url, re.S)
if i > 7:
print('The End')
return
print(newurl)
#未登陆,只能提取部分
html = requests.get(url, headers=header).text
#print(html)
titles()
#对每个分页进行标题提取
def titles():
global i, html
title = re.findall('class="card-title"(.*?)</div>', html, re.S)
print(title)
i += 1
newurls()
newurls()