用python脚本爬了点语法

 

我并不是个喜欢语法的人,从高中就不会,虽然大学学的是英语专业,但是我基本上只看文学内容,对于语法(grammar),语言(linguistic)一向都是不看的。所以我喜欢的书一般都是纯文学类的,大学毕业还找了勃兰兑斯的19世纪文学主流来看,除了记住了浪漫主义7诗人其他的也都忘了,后来发现顾随和叶嘉盈的书很对我的胃口。

今天是忽然发现有个讲语法的页面,无法复制,Firefox里面用F12查看了页面的源代码,发现很简单的HTML结构,就写了个脚本用requestsBeautifulSoup来做这件事。对于这种没有什么JS的页面,我还是有自信的,对于heavy AJAX的页面,要用Splash我也头疼的很。

代码如下:

from bs4 import BeautifulSoup
import requests



urls = ['http://www.yygrammar.com/Article/201706/5152.html', 'http://www.yygrammar.com/Article/201706/5152_2.html']

contents = []
for url in urls:

    req = requests.get(url)

    #req.encoding is 'ISO-8859-1',thus need these 2 lines
    if req.encoding is None or req.encoding == 'ISO-8859-1':
            req.encoding = req.apparent_encoding

    soup = BeautifulSoup(req.text,'html.parser')

    ps = soup.findAll('p', {'class':'MsoNormal'})

    for p in ps:
        #print(p.get_text())
        contents.append(p.get_text())

from pprint import pprint

#remove printable '\xa0'
import unicodedata
result = [ unicodedata.normalize('NFKC', s) for s in contents]

[print(i) for i in result]