豆瓣电影名次榜前250 分为10页波多野结衣 肛交,第一页的url为https://movie.douban.com/top250,但实质上应该是https://movie.douban.com/top250?start=0 后头的参数0示意从第几个驱动,如0示意从第一(肖申克的救赎)到第二十五(触不行及),https://movie.douban.com/top250?start=25示意从第二十六(蝙蝠侠:阴雨骑士)到第五十名(死亡诗社)。等等,
是以不错用一个步长为25的range的for轮回参数
分析完页面构成后,驱动获得页面,径直request.get()发现莫得复返任何东西,输出一下反映码
url = 'https://movie.douban.com/top250?start=0'res = request.get(url=url)print(res.status_code)
发现复返反映码418
畴前没见过这个,拉网线上网查一下,发现给get内部加一个header参数就行了
这里不错用我方浏览器的user-agent,如
headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.103 Safari/537.36'}
八成用fake_agent(安设径直用pip install fake_agent) 来为我方生成一个随即的agent添加到header字典中
from fake_useragent import UserAgentheaders = {'User-Agent': UserAgent().random}
之后就不错得到页面源码了。
然后使用lxml.etree,即xpath证实页面源码。用浏览器插件xpath finder快速定位到元素
波多野结衣 肛交
关联词径直这样式,证实到的是这么的成果
[<Element span at 0x20b2f0cc488>]
对于这东西是什么,有著作写的很好:https://www.jb51.net/article/132145.htm
这里我径直写惩办部分,在使用xpath证及时,后头加上/text()
name = html.xpath("/html/body/div[3]/div[1]/div/div[1]/ol/li[1]/div/div[2]/div[1]/a/span[1]/text()")
惩办后,再使用xpath finder插件,一步一步获得到电影所特地据
终末把这个写在函数里,外面再套上一驱动说的轮回,就OK了
在定位时,发现存4部电影先容莫得slogan,导致获得到的信息为空列表,也就导致了list.append()会出错。是以我加上了几个波折处理,惩办方式可能有点傻,要是有更好的惩办方针,倾耳细听
代码在终末不错看到
EXCEL保存部分
这里我用的xlwt
book = xlwt.Workbook()
sheet = book.add_sheet(u'sheetname', cell_overwrite_ok=True)
创建一个sheet表单。
数据保存到一个大列表中,列表嵌套列表
再通过轮回把数据导入到excel表单中
终末在保存一下
book.save(r'douban.xls')
介意文献后缀要用xls,用xlsx会导致文献打不开 萝莉调教
然后就大功顺利了
掀开文献,手动加入排名,等部分信息(这些也不错在措施里完成,我嫌艰辛,就没写,径直办动来的快)
前边的✓是我我方整的,用于纪录那些看过,那些没看过
这亦然我写这个东西的当先的决策
齐全代码鄙人面,仅用于参考
以上便是本文的一起内容,但愿对宇宙的学习有所匡助波多野结衣 肛交,也但愿宇宙多多复古剧本之家。
|