Python爬虫实战之花瓣素材网美女爬取,以后再也不用担心没有美女手机壁纸了!

477 阅读1分钟

Python爬虫实战之花瓣素材网美女爬取,以后再也不用担心没有美女手机壁纸了!

1. 花瓣素材:美女 - 搜索结果 - 花瓣 (huaban.com)

1.png

2.教程加源码:

  1. 还是一样的套路:先导入我们的请求 requests

    import requests
    
  2. 这里我用到了线程池来增加我们爬取的速度:

    from concurrent.futures import ThreadPoolExecutor
    pool = ThreadPoolExecutor(5) # 线程池数量我们设置为五个
    
    
  3. 不啰嗦了直接上源码吧相信大家不喜欢听这些:

    import requests
    from concurrent.futures import ThreadPoolExecutor
    pool = ThreadPoolExecutor(5) # 线程池数量我们设置为五个
    
    headers = {
        'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.0.0 Safari/537.36 Edg/110.0.1587.46',
    }
    
    
    def mage_url(params):
        url = 'https://api.huaban.com/search'
        response = requests.get(url=url, headers=headers, params=params)
        # print(response.json())
        for url_get in response.json()['pins']:
            image_url = f"https://gd-hbimg.huaban.com/{url_get['file']['key']}_fw658webp"
            name = url_get['user']['username']
            image_list = requests.get(url=image_url, headers=headers).content
            with open(f'花瓣素材\{name}.jpg', 'wb') as f:
                f.write(image_list)
            print(f"{name}保存成功")
    
    
    if __name__ == '__main__':
        for i in range(1,11):
            params = {
                'q': '美女壁纸',
                'sort': 'all',
                'per_page': 20,
                'page': f"{i}",
                'hide_other_count': 1,
                'position': 'search_pin',
            }
            pool.submit(mage_url, params)
        pool.shutdown(True)
    

    5.爬取结果如下:

2.png

6.如果还想爬取其他的素材,可以仿照我这个,大致模板都一样,只要找到它的api接口就行,如果不会评论区留言即可。