python爬虫程序requests采用get和post方式

第1个爬虫程序:
main.py

#! python
# -*- coding: utf-8 -*-
from urllib.request import urlopen
url = "https://www.hao123.com/"if __name__ == '__main__':resp = urlopen(url)# 把读取到网页的页面源代码写入myGetFile.html文件with open("myGetFile.html", mode="w", encoding='utf-8') as f:f.write(resp.read().decode('utf-8'))f.close()  # 关闭文件resp.close()  # 关闭resp响应print("结束")

第2个爬虫程序:
main2.py

# -*- coding: utf-8 -*-
import requestsif __name__ == '__main__':query = input("请输入一个你喜欢的明星:")url = f"https://www.baidu.com/s?ie=utf-8&f=8&rsv_bp=1&srcqid=5655130659909863611&tn=50000021_hao_pg&wd={query}"dic = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) ""Chrome/93.0.4577.63 Safari/537.36 Edg/93.0.961.47"}resp = requests.get(url, headers=dic)  # 处理一个小小的反爬# print(resp)# print(resp.text)  # 打印读取到的网页的页面源代码# 把读取到网页的页面源代码写入myGetFile.html文件with open("myGetFile.html", mode="w", encoding='utf-8') as f:f.write(resp.text)  # 读取到网页的页面源代码f.close()  # 关闭文件resp.close()  # 关闭resp响应连接print("结束")

第3个爬虫程序:
main3.py

# -*- coding: utf-8 -*-
import requestsif __name__ == '__main__':url = "https://fanyi.baidu.com/sug"s = input("请输入你要翻译的英文单词:")# 要翻译的英文单词dat = {"kw": s}# 用户代理dicHeaders = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) ""Chrome/93.0.4577.63 Safari/537.36 Edg/93.0.961.47"}# 发送post请求,发送的数据必须放在字典中,通过data参数进行传递resp = requests.post(url, headers=dicHeaders, data=dat)# print(resp.text)# 将服务器返回的内容直接处理成json(),就是字典格式print(resp.json())resp.close()  # 关闭resp响应连接print("结束")

第4个爬虫程序:
main4.py

# -*- coding: utf-8 -*-
import requestsif __name__ == '__main__':url = "https://movie.douban.com/j/chart/top_list"# 参数dicParam = {"type": "24","interval_id": "100:90","action": "","start": "0","limit": "20"}# 用户代理dicHeaders = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) ""Chrome/93.0.4577.63 Safari/537.36 Edg/93.0.961.47"}# 发送get请求,发送的数据必须放在字典中,通过params参数进行传递resp = requests.get(url=url, params=dicParam, headers=dicHeaders)  # 处理小小的反爬# print(resp.text)# 将服务器返回的内容直接处理成json(),就是字典格式# print(resp.json())objData = resp.json()# 打印信息for i in range(0, len(objData)):print(objData[i])resp.close()  # 关闭resp响应连接print("结束")

第5个爬虫程序:
main5.py

# -*- coding: utf-8 -*-
import requestsif __name__ == '__main__':url = "https://movie.douban.com/j/chart/top_list"# 进行连续2轮获取数据,每轮20个数据for n in range(0, 2):# 参数dicParam = {"type": "24","interval_id": "100:90","action": "","start": f"{20*n}","limit": "20"}# 用户代理dicHeaders = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) ""Chrome/93.0.4577.63 Safari/537.36 Edg/93.0.961.47"}# 发送post请求,发送的数据必须放在字典中,通过data参数进行传递resp = requests.get(url=url, params=dicParam, headers=dicHeaders)  # 处理小小的反爬# print(resp.text)# 将服务器返回的内容直接处理成json(),就是字典格式# print(resp.json())objData = resp.json()print(f"第{n+1}轮20个数据:")# 打印信息for i in range(0, len(objData)):print(objData[i])resp.close()  # 关闭resp响应连接print("结束")

关注公众号,获取更多资料
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/546582.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

带你走近AngularJS - 基本功能介绍

带你走近AngularJS系列: 带你走近AngularJS - 基本功能介绍带你走近AngularJS - 体验指令实例带你走近AngularJS - 创建自定义指令------------------------------------------------------------------------------------------------ AngularJS是Google推出的一款…

解决SpringBoot多模块发布时99%的问题?SpringBoot发布的8个原则和4个问题的解决方案

如果使用 SpringBoot 多模块发布到外部 Tomcat,可能会遇到各种各样的问题。本文归纳了以下 8 个原则和发布时经常出现的 4 个问题的解决方案,掌握了这些原则和解决方案,几乎可以解决绝大数 SpringBoot 发布问题。 SpringBoot 多模块发布的 8 …

python爬虫 正则表达式 re.finditer 元字符 贪婪匹配 惰性匹配

测试代码1: main5.py # -*- coding: utf-8 -*- import reif __name__ __main__:# findall匹配字符串中所有的符合正则的内容lst re.findall(r"\d", "濮阳电话区号:0393,郑州电话区号:0371")print(lst)# 【…

如何在路由器的局域网下使用IIS发布网页

这两天尝试着使用IIS发布网页,但是学校宿舍只有一个网线接口,所以宿舍只申请了一个IP然后使用路由器共享网络。但是问题出现了:发布后的网页通过“IP:端口号”只能被自己宿舍的电脑(同一路由器)访问&#x…

U盘安装ubuntu20.04 Linux系统分区方案 Invalid Partition Table

一、简介: 一般磁盘分区表有两种格式:MBR和GPT,目前主要的BIOS系统引导方式也有两种:传统的Legacy BIOS和新型的UEFI BIOS 如果主机BIOS系统引导方式采用传统的Legacy BIOS,那么安装ubuntu系统的磁盘分区表使用MBR格式…

面试珍藏:最常见的200多道Java面试题(2019年最新版)

作者:老王来自公众号:Java中文社群(ID:javacn666)2015 年,因为工作岗位的变动,开始负责给集团招聘一些技术人员,出于对公司的负责,也为了更好的胜任技术经理的职位&#…

ubuntu20.04使用终端命令安装谷歌Chrome浏览器稳定版

使用命令行安装谷歌浏览器稳定版 sudo wget http://www.linuxidc.com/files/repo/google-chrome.list -P /etc/apt/sources.list.d/wget -q -O - https://dl.google.com/linux/linux_signing_key.pub | sudo apt-key add -sudo apt-get updatesudo apt-get install google-chr…

面试官:数据量大的情况下分页查询很慢,有什么优化方案?

来源: http://uee.me/aVSnD当需要从数据库查询的表有上万条记录的时候,一次性查询所有结果会变得很慢,特别是随着数据量的增加特别明显,这时需要使用分页查询。对于数据库分页查询,也有很多种方法和优化的点。下面简单说一下我知道…

python爬虫获取中国天气网天气数据 requests BeautifulSoup re

python获取中国天气网天气数据:http://www.weather.com.cn/textFC/henan.shtml main.py # -*- coding: utf-8 -*- import requests from xpinyin import Pinyin from bs4 import BeautifulSoup import

使用Exchange反垃圾邮件组件解决内部仿冒邮件

最近一个朋友遇到一个很有意思的问题,在生产环境中我们装好Exchange之后,肯定需要配置外部邮件的收发。按照我们对邮件系统的理解,我们必须在default 接收连接器上的权限设置,允许匿名连接,才能实现外部邮件的接收。如…

VMware ubuntu20.04 server随win10自动启动与关闭

一、背景简介: 在win10下安装虚拟机,此虚拟机作为服务器使用,但是wi10电脑经常开关机,有的情况下,关机前没有主动关闭虚拟机,到此服务器需要收到重启,且数据容易丢失,配置 win10开机…

秋招注意事项和面试通关攻略

首先给大家说声抱歉,最近由于个人工作(突然996)和精力上的原因,导致公众号断更了一段时间,后面会逐渐恢复公众号的更新,在此感谢大家的理解和支持。国内主流的互联网公司在 8 月份都开放了秋招申请,那秋招有哪些需要注…

python爬虫 单线程的多任务异步协程

在input()、sleep(2)、request.get()等时,都会导致线程阻塞,协程可以解决IO等操作时的阻塞现象,提高CPU利用效率。 1.单线程的多任务异步协程 main.py """ coding: UTF8 """ import asyncio import timeasyn…

阿里2020届校招笔试劝退题——你大爷还是你大爷

阿里巴巴 2020 届的校招笔试结束了,群里哀声一片,来看这些经历了阿里秋招“洗礼”的小伙伴的真实状态。下面这些人嘛......就有些偏激了,哈哈哈先来说一下阿里笔试题构成:10 道单选题 2 道附加题。什么?单选题简单&am…

面试题:图解深克隆和浅克隆

获得好工作的秘密:有效的准备面试。在开始之前,我们先来看以下代码存在什么问题?class CloneTest {public static void main(String[] args) throws CloneNotSupportedException {// 等号赋值( 基本类型)int number 6…

python爬虫 threading 多线程 ThreadPoolExecutor线程池

1.创建多线程,无参数 main.py """ coding: UTF8 """ # 线程类 from threading import Threadclass myThread(Thread):def run(self): # 当线程被执行的时候,被执行的就是run()for i in range(1000):print("子线程&…

python爬虫 asyncio aiohttp aiofiles 单线程多任务异步协程爬取图片

python爬虫 asyncio aiohttp aiofiles 多任务异步协程爬取图片 main.py """ coding: UTF8 """ # requests.get()同步代码 -> 异步操作aiohttp import asyncio import aiohttp import aiofilesurls ["https://img.lianzhixiu.com/uploa…

面试题:如何设计一个高并发的系统?

这道面试题涉及的知识点比较多,主要考察的是面试者的综合技术能力。高并发系统的设计手段有很多,主要体现在以下五个方面。1、前端层优化① 静态资源缓存:将活动页面上的所有可以静态的元素全部静态化,尽量减少动态元素&#xff1…

python爬虫lxml xpath测试

xpath测试1&#xff1a; main.py """ coding: UTF8 """ from lxml import etreexml """ <book><id>1</id><name>春风</name><price>1.56</price><nick>万里</nick><…

命令行下Apache日志统计举例

Apache日志统计举例加些来了解一下如何统计Apache的访问日志&#xff0c;一般可以用tail命令来实时查看日志文件变化&#xff0c;但是各种的应用系统中的日志会非常复杂&#xff0c;一堆长度超过你浏览极限的日志出现在你眼前时&#xff0c;你会觉得非常无奈&#xff0c;怎么办…