美文网首页
2018-12-05 爬虫入门笔记(1)

2018-12-05 爬虫入门笔记(1)

作者: NickyChu | 来源:发表于2018-12-05 00:47 被阅读0次

豆瓣电影名字与年份 selector 运用CSS方法

这一版本将年份返回值做了去两端括号处理,借鉴了这个例子https://blog.csdn.net/mach_learn/article/details/41744487

#一个去除杂乱符号的例子
import re
temp = "想做/ 兼_职/学生_/ 的 、加,我Q:  1 5.  8 0. !!??  8 6 。0.  2。 3             有,惊,喜,哦"
string = re.sub("[\s+\.\!\/_,$%^*(+\"\']+|[+——!,。?、~@#¥%……&*()]+",     "",temp)#用法: re.sub(要被替换的值,替换值,text)
print(string)

接下来是我今晚初学爬虫的成果XD(虽然很弟弟)

首先当然是import部分

from requests_html import HTMLSession
import re

接下来是函数主体

def clearstr(str1):
str1 = re.sub("[\s+\.\!\/_,$%^*()+\"\']+|[+——!,。?、~@#¥%……&*()]+", "",str1)#用法: re.sub(要被替换的值,替换值,text)  
return str1

def getmovieyear(links):
name = []
year = []
for link in links:
    session1 = HTMLSession()
    h1 = session1.get(link)
    n1=h1.html.find('#content > h1 > span:nth-child(1)',first=True).text#得到name的text格式
    y1=clearstr(h1.html.find('#content > h1 > span.year',first=True).text)#得到year的text格式并清洗格式
    name.append(n1)
    year.append(y1)
for movie in name:
    i=0
    print("《{0}》 is showed in {1}".format(movie,year[i]))
    i=i+1

最后是示例效果

mylink=['https://movie.douban.com/subject/1292052/']
getmovieyear(mylink)

输出为:《肖申克的救赎 The Shawshank Redemption》 is showed in 1994

明天的目标

学习bs4的使用:Beautiful Soup 的用法

相关文章

网友评论

      本文标题:2018-12-05 爬虫入门笔记(1)

      本文链接:https://www.haomeiwen.com/subject/nwvbcqtx.html