学完了爬网页中的文本,今天我们来试着学习爬图片。目标网址:http://www.netbian.com/
我们的目标就是爬取这些壁纸
打开网址 查看网页结构(推荐学习:Python视频教程)
用火狐浏览器打开链接 F12查看
由于我使用的pyquery
可以看到图片的链接 都在img标签的src属性中 我们只要通过pyquery锁定到这个img标签 就可以继续下一步了
我们先来尝试抓取一页的壁纸试试看
下面是具体的代码:
#!/usr/bin/env python # -*- coding: utf-8 -*- # @Time : 2018/10/31 17:54 # 爬取图片 import requests from pyquery import PyQuery as pq import time headers = { 'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_4) AppleWebKit/537.36 ' '(KHTML, like Gecko) Chrome/52.0.2743.116 Safari/537.36' } # 这里我使用了代理 你可以去掉这个代理IP 我是为了后面大规模爬取做准备的 proxies = { 'https': '218.75.69.50:39590' } # 请求网页 获取源码 def start_request(url): r = requests.get(url, headers=headers, proxies=proxies) # 这个网站页面使用的是GBK编码 这里进行编码转换 r.encoding = 'GBK' html = r.text return html # 解析网页 获取图片 def parse(text): doc = pq(text) # 锁定页面中的img标签 images = doc('div.list ul li img').items() x = 0 for image in images: # 获取每一张图片的链接 img_url = image.attr('src') # 获得每张图片的二进制内容 img = requests.get(img_url, headers=headers, proxies=proxies).content # 定义要存储图片的路劲 path = "F:\\image\\" + str(x) + ".jpg" # 将图片写入指定的目录 写入文件用"wb" with open(path, 'wb') as f: f.write(img) time.sleep(1) print("正在下载第{}张图片".format(x)) x += 1 print("写入完成") def main(): url = "http://www.netbian.com" text = start_request(url) parse(text) if __name__ == "__main__": main()
更多Python相关技术文章,请访问Python教程栏目进行学习!
The above is the detailed content of How to crawl pictures with python. For more information, please follow other related articles on the PHP Chinese website!

TomergelistsinPython,youcanusethe operator,extendmethod,listcomprehension,oritertools.chain,eachwithspecificadvantages:1)The operatorissimplebutlessefficientforlargelists;2)extendismemory-efficientbutmodifiestheoriginallist;3)listcomprehensionoffersf

In Python 3, two lists can be connected through a variety of methods: 1) Use operator, which is suitable for small lists, but is inefficient for large lists; 2) Use extend method, which is suitable for large lists, with high memory efficiency, but will modify the original list; 3) Use * operator, which is suitable for merging multiple lists, without modifying the original list; 4) Use itertools.chain, which is suitable for large data sets, with high memory efficiency.

Using the join() method is the most efficient way to connect strings from lists in Python. 1) Use the join() method to be efficient and easy to read. 2) The cycle uses operators inefficiently for large lists. 3) The combination of list comprehension and join() is suitable for scenarios that require conversion. 4) The reduce() method is suitable for other types of reductions, but is inefficient for string concatenation. The complete sentence ends.

PythonexecutionistheprocessoftransformingPythoncodeintoexecutableinstructions.1)Theinterpreterreadsthecode,convertingitintobytecode,whichthePythonVirtualMachine(PVM)executes.2)TheGlobalInterpreterLock(GIL)managesthreadexecution,potentiallylimitingmul

Key features of Python include: 1. The syntax is concise and easy to understand, suitable for beginners; 2. Dynamic type system, improving development speed; 3. Rich standard library, supporting multiple tasks; 4. Strong community and ecosystem, providing extensive support; 5. Interpretation, suitable for scripting and rapid prototyping; 6. Multi-paradigm support, suitable for various programming styles.

Python is an interpreted language, but it also includes the compilation process. 1) Python code is first compiled into bytecode. 2) Bytecode is interpreted and executed by Python virtual machine. 3) This hybrid mechanism makes Python both flexible and efficient, but not as fast as a fully compiled language.

Useaforloopwheniteratingoverasequenceorforaspecificnumberoftimes;useawhileloopwhencontinuinguntilaconditionismet.Forloopsareidealforknownsequences,whilewhileloopssuitsituationswithundeterminediterations.

Pythonloopscanleadtoerrorslikeinfiniteloops,modifyinglistsduringiteration,off-by-oneerrors,zero-indexingissues,andnestedloopinefficiencies.Toavoidthese:1)Use'i


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Zend Studio 13.0.1
Powerful PHP integrated development environment

Safe Exam Browser
Safe Exam Browser is a secure browser environment for taking online exams securely. This software turns any computer into a secure workstation. It controls access to any utility and prevents students from using unauthorized resources.

SublimeText3 English version
Recommended: Win version, supports code prompts!

PhpStorm Mac version
The latest (2018.2.1) professional PHP integrated development tool
