爬取剧集地址并存入excel

需求以及技术点梳理

爬取地址并保存在数据库,后期可放入网站后台调用,最终实现网站在线播放剧集

由于数据库以及后台相关知识尚未掌握

现暂时练习用爬虫爬取视频地址保存至excel,然后用access存储

利用人人视频爬取,因为它的视频url是现成的(不可思议噢)

先用selenium爬取,后期合适的话用scrapy全站爬取

保存用xlwt模块,后期练习操作excel,争取熟练使用此模块

爬取胜者即是正义为例

代码

#导入模块略
def main():
    workbook = xlwt.Workbook(encoding='utf-8')
    mysheet = workbook.add_sheet('剧集1')
    mysheet.write(0, 0, '片名')
    mysheet.write(0, 1, '集数')
    mysheet.write(0, 2, '链接地址')
    i = 1
    num = input("请输入剧集代号:")
    for page in range(1, 11):
        url = "http://m.rr.tv/detail/%s?snum="%num+ str(page)
        item = parse_result(url)
        print(item)
        mysheet.write(i, 1, i)
        mysheet.write(i, 2,item)
        i = i+1
    url = 'http://m.rr.tv/detail/%s?snum=1'%num
    name = get_name(url)
    mysheet.write(1, 0, name)
    workbook.save('D:/base/%s.xls'%name)
    print("写入完成!")
def get_name(url):
    browser = webdriver.Chrome()
    browser.get(url)
    sleep(2)
    browser.execute_script('document.documentElement.scrollTop=10000')
    sleep(2)
    # browser.find_element_by_xpath("/html/body/div[3]/div[1]/div/div[1]/div[1]/div[2]/ul/li[40]/a/img").click()
    # subjects = browser.find_elements_by_xpath("//div[contains(@class,'cover')]/a/img")
    subjects = browser.find_element_by_xpath("/html/body/div/div/div/main/div[3]/div[2]/h1")
    name = subjects.text
    return name

def parse_result(url):
    browser = webdriver.Chrome()
    browser.get(url)
    sleep(2)
    browser.execute_script('document.documentElement.scrollTop=10000')
    sleep(2)
    # browser.find_element_by_xpath("/html/body/div[3]/div[1]/div/div[1]/div[1]/div[2]/ul/li[40]/a/img").click()
    # subjects = browser.find_elements_by_xpath("//div[contains(@class,'cover')]/a/img")
    subjects = browser.find_element_by_xpath("/html/body/div[1]/div/div/main/div[2]/video")
    video_url = subjects.get_attribute("src")
    item = video_url
    return item


if __name__ == '__main__':
    main()

输入视频编号3929后即可访问对应页面爬取,思考:如何利用scrapy进行全站爬取呢?

效果

爬取剧集地址并存入excel_第1张图片
爬取剧集地址并存入excel_第2张图片

保存至access

爬取剧集地址并存入excel_第3张图片
后期也可以探究一下access的灵活使用

下一阶段

尝试更快更高效的爬取尽可能多的数据

后续和小结

爬下来的链接有限制,过一定时间就会失效,所以爬取到的url只能是短时间有用,这种情况也正常,想想也不太可能那么容易得到永久的资源地址

你可能感兴趣的:(实用,selenium,python,爬虫)