Python3爬虫学习笔记——正则表达式练习之爬取起点网完本玄幻小说信息

说来惭愧,在看完崔庆才写的Python3网络爬虫开发实战的requests篇和正则表达式篇后,就想练练手,于是想到了最近书荒,就像看看小说,于是就。。。

但是呢,在chrome下参考网站源码还写正则表达式后,并不能获取到想要的数据。查看输出html后,发现获取到的html源码并非与chrome上Elements提供的相同。查询相关资料后了解到Elements显示的源码时经过渲染以后的源码。所以需要查看最初请求的源码,最好是选择network下的第一项。

 

Python3爬虫学习笔记——正则表达式练习之爬取起点网完本玄幻小说信息_第1张图片

问题解决后,本小白就着手解决代码了。废话不多说,直接上源码。。。

import re
import requests

def get_one_page(url):
    headers = {
        'User-Agent':'MOzilla/5.0(Macintosh;Inter Mac OS X 10_13_3) AppleWebKit/537.36 (KHTML,like Gecko) Chrome/65.0.3325.162 Safari/537.36'
    }
    response =requests.get(url,headers=headers)
    if response.status_code == 200:
        return response.text
    return None

def main():
    url = 'https://www.qidian.com/finish?chanId=21&action=hidden&orderId=&page=1&style=1&pageSize=20&siteid=1&pubflag=0&hiddenField=2'
    html = get_one_page(url)
    pattern = re.compile('(.*?).*?name.*?>(.*?).*?intro.*?>(.*?)

.*?',re.S) results = re.findall(pattern,html) for result in results: res=list(result) for item in res: print(re.sub('\s','',item),end=' ') print('\n') if __name__ == '__main__': main()

由于刚开始学习python爬虫,可能书写习惯不太好,欢迎各位童鞋指正

 

你可能感兴趣的:(Python3爬虫学习笔记——正则表达式练习之爬取起点网完本玄幻小说信息)