import re import requests def parse_page(url): headers = { 'User-Agent': 'Mozilla / 5.0(Windows NT 10.0;WOW64) AppleWebKit / 537.36(KHTML, likeGecko) Chrome / 79.0.3945.130Safari / 537.36' } resp = requests.get(url,headers) text = resp.text # re.DOTALL .也可以匹配换行符 titles = re.findall(r'<divsclass="cont">.*?<b>(.*?)</b>', text, re.DOTALL) print(titles) def main(): # url ='https://www.gushiwen.org/default_1.aspx' for x in range(1, 18): url ='https://www.gushiwen.org/default_%s.aspx' % x parse_page(url) if __name__ == '__main__': main()
古诗文网站的爬取
今天学习到了使用正则表达式来爬取网页,感觉xpath比较好用,但是我自己爬取b站《花牌情缘》的评论时发现并不能成功
为什么呢?
因为评论是一点点加载出来的,你往下拉,他才会出现新的,然后会有好多页,翻页也是这样,在网上查了一下评论数据保存在这个请求里面,以json保存的
Request URL:
https://api.bilibili.com/x/v2/reply?callback=jQuery17204184039578913048_1580701507886&jsonp=jsonp&pn=1&type=1&oid=700
但是你点开这个网页是403错误,在网上查了一下,需要访问这个网页https://api.bilibili.com/x/v2/reply?pn=1&type=1&oid=700
点开是一个json数据,今天还学习了python中json对象的解析。