![Python网络爬虫从入门到精通](https://wfqqreader-1252317822.image.myqcloud.com/cover/915/44509915/b_44509915.jpg)
上QQ阅读APP看书,第一时间看更新
4.4 上传文件
request()方法提供了两种比较常用的文件上传方式,一种是通过fields参数以元组形式分别指定文件名、文件内容以及文件类型,这种方式适合上传文本文件时使用。以上传图4.7所示的文本文件为例,代码如下:
![](https://epubservercos.yuewen.com/8BF9E9/23721540501937606/epubprivate/OEBPS/Images/Figure-P68_13608.jpg?sign=1738947459-MtpraLTUVUvfMOa9IoaPoF0t20VFBcaa-0-0f4a5295568f2e74969982e0167c0a7b)
图4.7 需要上传的文本文件
【例4.11】 上传文本文件。(实例位置:资源包\Code\04\11)
![](https://epubservercos.yuewen.com/8BF9E9/23721540501937606/epubprivate/OEBPS/Images/Figure-P68_52560.jpg?sign=1738947459-R4lVAM9lStOaTPjeR4NUNzXrWDftHlY7-0-c4cd6e6e6440f3160b55754ec307b2ab)
程序运行结果如下:
{'filefield': '在学习中寻找快乐!'}
【例4.12】 上传图片文件。(实例位置:资源包\Code\04\12)
如果需要上传图片,则可以使用第二种方式,在request()方法中指定body参数,该参数所对应的值为图片的二进制数据,然后还需要使用headers参数为其指定文件类型。示例代码如下:
![](https://epubservercos.yuewen.com/8BF9E9/23721540501937606/epubprivate/OEBPS/Images/Figure-P68_52561.jpg?sign=1738947459-aXNhX72RNcr3bkTEd3DsSZBtoQrCoFbJ-0-f98dd0aef66325d376c89857abc233f2)
程序运行结果,如图4.8所示。
![](https://epubservercos.yuewen.com/8BF9E9/23721540501937606/epubprivate/OEBPS/Images/Figure-P69_53118.jpg?sign=1738947459-zw44VQRMOwqtZ3PoB7ocmAntLCmUlH1a-0-33a9ff4dd60d62f5706013a6a521a641)
图4.8 上传图片文件所返回的信息
说明
由于返回的数据中data内容较多,所以图4.8中仅截取了数据中的一部分内容。