# 经过上面的三种情况,可能找到了jav在web上的网页链接url_on_web print(' >获取信息:', url_on_web) # 得到最终的jav所在网页 html_web, cookies = get_db_html(url_on_web, cookies, proxy_db) html = html_web # print(html_web) # 有大部分信息的html_web html_web = re.search(r'h2 class([\s\S]*?)想看', html_web, re.DOTALL).group(1) # print(html_web) # 标题 title = re.search(r'strong>(.+?)</', html_web).group(1).replace(' 中文字幕 ', '') # 去除xml文档和windows路径不允许的特殊字符 &<> \/:*?"<>| title = replace_xml_win(title) print(' >影片标题:', title) # title的开头是车牌号,想要后面的纯标题 car_titleg = re.search(r'(.+?) (.+)', title) # 车牌号 dict_data['车牌'] = car = car_titleg.group(1) # 给用户重命名用的标题是“短标题”,nfo中是“完整标题”,但用户在ini中只用写“标题” title_only = car_titleg.group(2) dict_data['完整标题'] = title_only # 处理影片的标题过长 if len(title_only) > settings.int_title_len: dict_data['标题'] = title_only[:settings.int_title_len] else: dict_data['标题'] = title_only # DVD封面cover coverg = re.search(r'img src="(.+?)"', html_web) # 封面图片的正则对象
html_web = get_library_html(url_jav_web, proxy_library) # 找到标题,留着马上整理信息用 title = re.search( r'<title>([A-Z].+?) - JAVLibrary</title>', html_web).group(1) # 第三种情况:搜索不到这部影片,搜索结果页面什么都没有 else: num_fail += 1 record_fail(' >第' + str(num_fail) + '个失败!javlibrary找不到该车牌的信息:' + jav.car + ',' + path_relative + '\n') continue # 【跳出对该jav的整理】 print(' >影片标题:', title) # 去除xml文档和windows路径不允许的特殊字符 &<> \/:*?"<>| title = replace_xml_win(title) # 正则匹配 影片信息 开始! # title的开头是车牌号,想要后面的纯标题 car_titleg = re.search(r'(.+?) (.+)', title) # 车牌号 jav_temp = car_titleg.group(1) # 在javlibrary中,T-28 和 ID 的车牌很奇特。javlibrary是T-28XXX,而其他网站是T28-XXX;ID-20XXX,而其他网站是20ID-XXX。 if 'T-28' in jav_temp: jav_temp = jav_temp.replace('T-28', 'T28-', 1) elif 'ID-' in jav_temp: jav_tempg = re.search(r'ID-(\d\d)(\d\d\d)', jav_temp) if jav_tempg: jav_temp = jav_tempg.group( 1) + 'ID-' + jav_tempg.group(2) dict_data['车牌'] = car = jav_temp # car可能发生了变化 dict_data['车牌前缀'] = car.split('-')[0]