想看美女图片?请用Python实现!

白昼怎懂夜的黑 提交于 2020-03-08 01:43:48

目的:

  寂寞的夜晚总需要精神依托,用Python滋润疲惫的身心!!!

 

效果:

 

 

 

 

  实现类

 1 from Common import Common
 2 import requests
 3 
 4 class Get_mn(Common):
 5     """
 6     title:Python爬取成人网站图片Demo
 7     time:2020/03/08 00:54
 8     """
 9     def mb(self):
10         url = 'https://www.449mk.com/pic/5/2020-01-10/25477.html'
11         #创建打开Chrome()对象,访问url
12         self.open_url(url)
13         #获取图片标题
14         img_title = self.get_text("xpath",'/html/body/div[8]/div/div[1]')
15         #获取图片列表
16         img_list = self.locateElement("xpath_s",'/html/body/div[8]/div/div[3]/p[*]/img')
17         for index, item in enumerate(img_list):
18             # 获取列表src属性中的href属性
19             item_href = item.get_attribute("src")
20             # 导入访问图片的src
21             res = requests.get(item_href)
22             # 定义生成图片的名称
23             img_name = img_title+"[" + str(index+1) + "].jpg"
24             # 生成图片
25             print(img_name+"开始写入-------")
26             with open('./image/'+img_name, 'wb') as f:
27                 f.write(res.content)
28             print(img_name+"第"+str(index+1)+"张图片下载完成")
29 
30 if __name__ == '__main__':
31     mn = Get_mn()
32     mn.mb()

  公共类:

 1 from selenium import webdriver
 2 from time import sleep
 3 
 4 class Common(object):
 5     def __init__(self):
 6         self.chrome = webdriver.Chrome()
 7         self.chrome.implicitly_wait(2)
 8         self.chrome.maximize_window()
 9 
10     def open_url(self,url):
11         self.chrome.get(url)
12         self.chrome.implicitly_wait(10)
13 
14     def locateElement(self,locate_type,value):
15         le = None
16         if locate_type == 'css':
17             el = self.chrome.find_element_by_css_selector(value)
18         elif locate_type == 'name':
19             el = self.chrome.find_element_by_name(value)
20         elif locate_type == 'class':
21             el = self.chrome.find_element_by_class_name(value)
22         elif locate_type == 'class_s':
23             el = self.chrome.find_elements_by_class_name(value)
24         elif locate_type == 'id':
25             el = self.chrome.find_element_by_id(value)
26         elif locate_type == 'tag':
27             el = self.chrome.find_element_by_tag_name(value)
28         elif locate_type == 'tag_s':
29             el = self.chrome.find_elements_by_tag_name(value)
30         elif locate_type == 'xpath':
31             el = self.chrome.find_element_by_xpath(value)
32         elif locate_type == 'xpath_s':
33             el = self.chrome.find_elements_by_xpath(value)
34         elif locate_type == 'text':
35             el = self.chrome.find_element_by_link_text(value)
36         elif locate_type == 'text_s':
37             el = self.chrome.find_elements_by_link_text(value)
38         elif locate_type == 'liketext':
39             el = self.chrome.find_element_by_partial_link_text(value)
40         elif locate_type == 'liketext_s':
41             el = self.chrome.find_elements_by_partial_link_text(value)
42 
43         if el is not None:
44             return el
45 
46     def click(self,locate_type,value):
47         el = self.locateElement(locate_type,value)
48         el.click()
49 
50     def input_data(self,locate_type,value,date):
51         el = self.locateElement(locate_type,value)
52         el.send_keys(date)
53 
54     def get_text(self,locate_type,value):
55         el = self.locateElement(locate_type,value)
56         return el.text
57 
58     def get_attr(self,locate_type,value,attrname):
59         el = self.locateElement(locate_type,value)
60         return el.get_attribute(attrname)
61 
62 
63     def close_win(self):
64         self.chrome.quit()
65 
66     def __del__(self):
67         sleep(1)
68         self.chrome.close()

 

  

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!