关注分享主机优惠活动
国内外VPS云服务器

Python实战,请求模块,Python实现抢头条,街拍美图。

摘要:前言使用了街拍的美图。获取浏览器详细信息,获取文章链接,获取相关代码,获取街拍失败。这里需要提一下模块的错误,在对象上调用方法。如果下载的文件中有错误,将会抛出异常。您需要用and语句包装代码行来处理这个错误,以免程序崩溃。

前言用Python抓取了的美图街拍。废话不多说。

开心的开始吧~

开发工具Python版本& # xff1a3.6.4

相关模块xff1a

请求模块:

re模块:

以及Python自带的一些模块。

构建环境,安装Python并将其添加到环境变量& xff0c;只需在pip中安装所需的相关模块即可。

详细的浏览器信息

获取文章链接相关代码& xff1a;

导入请求导入JSON导入排练器& # 61;{ '用户-代理& # 39;: 'Mozilla/5.0(Windows NT 6.1;WOW64) AppleWebKit/537.36 (KHTML,像壁虎一样)Chrome/55 . 0 . 2883 . 87 Safari/537.36 & # 39;} def get _ first _ data(offset):params & # 61;{ 'offset & # 39:偏移量,& # 39;格式& # 39;: 'json & # 39, '关键词& # 39;: '街拍& # 39;, '自动加载& # 39;: '真& # 39;, '伯爵& # 39;: '20', 'cur _ tab & # 39: '1', '从& # 39;:'search _ tab & # 39}回应& # 61;requests . get(URL & # 61;'https://www.toutiao.com/search_content/',头球& # 61;标题,参数& # 61;params)try:response . raise _ for _ status()return response . text exc:print("采集失败")return none def handle _ first _ data(HTML):data & # 61;JSON.loads (HTML) if data和" data " in data . keys():for item in data . get(" data "):yielditem . get(" article _ URL ")这里需要提一下requests模块的错误# xf0c对响应对象调用raise_for_status()方法如果下载文件时出现错误。将抛出异常& # xff0c。您需要使用try和except语句来包装代码行。处理这个错误& xff0c;防止程序崩溃。

此外,附上请求模块技术文档的URL:http://CN . python -requests . org/zh _ CN/latest/

获取图片链接相关代码& xff1a;

def get _ second _ data(URL):if URL:try:response & # 61;requests.get(url,headers & # 61标题)报告。raise _ for _ status()返回报告。text exc:print("进入链接出错")返回none def handle _ second _ data(html):if html:pattern & # 61;重新编译(r & # 39gallery: JSON.parse/((。*?)/),',回复。s)结果& # 61;如果结果为:imageurl & # 61[]数据& # 61;JSON . loads(JSON . loads(result . group(1)))if data . keys():sub _ images & # 61;data.get("sub_images ")图像& # 61;[item . get(& # 39;网址& # 39;)for item in sub _ images】for images in images:imageurl . append(images)return imageurl else:print(" have no result ")获取图片相关代码\

def download_image(imageUrl):对于imageUrl中的URL:try:image & # 61;requests.get(url)。内容除外:与open(" images " & # 43;str(URL[-10:])& # 43;".jpg "," WB ")as ob:ob . write(image)ob . close()print(URL[-10:]& # 43;“下载成功& # xff01”+URL)def main():html & # 61;handle_first_data(html)中url的get _ first _ data(0):html & # 61;get _ second _ data(URL)if html:result & # 61;handle _ second _ data(html)if result:try:download _ image(result)except key错误:print(“{ 0 }有问题& xff0c;跳过”。格式(结果))继续EIF _ _ name _ _ & # 61;='_ _ main _ _ & # 39:main()终于下载成功。

查看详细信息

未经允许不得转载:主机频道 » Python实战,请求模块,Python实现抢头条,街拍美图。

相关推荐

评论 抢沙发

评论前必须登录!