1了解需求
2根据需求找网站
3请求
4获取
5存储
from urllib import request, parse
from urllib.error import HTTPError, URLError def get(url, headers=None):
return urlrequests(url, headers=headers)
  #必须写headers,因为按顺序走会form def post(url, form, headers=None):
return urlrequests(url, form, headers=headers) #b. post(url, form, headers=None) def urlrequests(url, form=None, headers=None):
user_agent = 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.99 Safari/537.36'
# 如果用户需要自行传入headers, 则覆盖之前的headers
if headers == None:
headers = {
'User-Agent': user_agent
}
html_bytes = b''
try:
if form:
# POST请求
# 2.1 转换成str
form_str = parse.urlencode(form)
#print(form_str)
# 2.2 转换成bytes
form_bytes = form_str.encode('utf-8')
req = request.Request(url, data=form_bytes, headers=headers)
else:
# GET请求
req = request.Request(url, headers=headers)
response = request.urlopen(req)
html_bytes = response.read()
except HTTPError as e:
print(e)
except URLError as e:
print(e) return html_bytes if __name__ == '__main__':
  
  url = 'http://fanyi.baidu.com/sug'
  #1,准备数据
  form = {
  'kw': '呵呵'
  }
  html_bytes = post(url, form=form)
  #2,调到函数  
  print(html_bytes)
  #3,打印   # url = 'http://www.baidu.com'
  # html_byte = get(url)
  # print(html_byte)
  
  

最新文章

  1. jQuery-1.9.1源码分析系列(七) 钩子(hooks)机制及浏览器兼容
  2. JavaScript-在当前显示区范围内实现点不到的小方块
  3. NODEJS-fs模块操作文件系统
  4. LeetCode Two Sum II - Input array is sorted
  5. Head First 设计模式 --3 装饰者模式 开闭原则
  6. 两种获取connectionString的方式
  7. HDU 1150 Machine Schedule (二分图最小点覆盖)
  8. Linux命令总结(转载)
  9. IIS 启用或关闭目录浏览
  10. angularJS $watch $digest $apply
  11. Objective-c 方法的调用
  12. 南京.NET线下活动后续—一对一技术交流
  13. vue轮播图中间大两头小
  14. python语法_模块_time_datetime_random
  15. 第 10 章 容器监控 - 080 - Weave Scope 容器地图
  16. C# 把ABCD转换成数字
  17. 使用 IntraWeb (28) - 基本控件之 TIWTemplateProcessorHTML、TIWLayoutMgrHTML、TIWLayoutMgrForm
  18. 实现定时器定时 1 秒钟,LED 亮灭显示
  19. MVC bundle的使用总结
  20. jsp路径问题之base

热门文章

  1. 阿里云windows 2008 服务器处理挖矿程序 Miner
  2. Linux 系统调用(system call)
  3. Python3 tkinter基础 Tk quit 点击按钮退出窗体
  4. 在Pycharm中使用Pandas时输出结果中列被省略的解决办法
  5. P2495 [SDOI2011]消耗战
  6. HDU 3533 Escape(大逃亡)
  7. 配置IPMI
  8. SQL server中如何按照某一字段中的分割符将记录拆成多条
  9. day4——无重复字符的最长子串
  10. MySQL存储过程 游标