Python基础学习-爬虫小试2

原创 2015年11月18日 15:02:03
import urllib.parse
import urllib.request

data =urllib.parse.urlencode({"wd": "haha"})
url="http://baidu.com/s"
request=urllib.request.Request(url+'?'+data)
response=urllib.request.urlopen(request)
th_page=response.read().decode('utf8')
f=open('learnPY\\out.html','w',encoding='utf-8')
f.write(th_page)
f.close()
print("DONE")


     上头代码是get方式,GET方式是直接以链接形式访问,链接中包含了所有的参数,当然如果包含了密码的话是一种不安全的选择,不过你可以直观地看到自己提交了什么内容。POST则不会在网址上显示所有的参数。post参考下段代码:

import urllib
import urllib2
 
values = {"username":"1016903103@qq.com","password":"XXXX"}
data = urllib.urlencode(values) 
url = "https://passport.csdn.net/account/login?from=http://my.csdn.net/my/mycsdn"
request = urllib2.Request(url,data)
response = urllib2.urlopen(request)
print response.read()

该段代码适用于2.X版本


卡住的地方是文本的encode和decode

     字符串在Python内部的表示是unicode编码,因此,在做编码转换时,通常需要以unicode作为中间编码,即先将其他编码的字符串解码(decode)成unicode,再从unicode编码(encode)成另一种编码。

  • decode的作用是将其他编码的字符串转换成unicode编码,如str1.decode('gb2312'),表示将gb2312编码的字符串str1转换成unicode编码。
  • encode的作用是将unicode编码转换成其他编码的字符串,如str2.encode('gb2312'),表示将unicode编码的字符串str2转换成gb2312编码。


另:文本存储要注意路径设置!


经人介绍,安装了第三方库:requests

修改如下:

import requests

data ={"wd": "haha"}
url="http://baidu.com/s"
request=requests.get(url, params=data)
f=open('out.html','w',encoding='utf-8')
f.write(request.text)
f.close()
print("DONE")


版权声明:本文为博主原创文章,未经博主允许不得转载。

python爬虫零基础入门

思路讲解+代码解释注释以后的代码。代码不足之处相关链接 关于爬虫相关理论认识下载安装BeautifulSoup,请移步 思路讲解+代码解释 尽管现在是2014年了,但...
  • ctt594088
  • ctt594088
  • 2014年06月03日 18:44
  • 828

零基础的我是这样开始写Python爬虫的(附代码)

来源:程序猿 本文长度为2863字,建议阅读5分钟 本文为你分享零基础开始写爬虫的经验。 刚开始接触爬虫的时候,简直惊为天人,十几行代码,就可以将无数网页的信息全部获取下来,自动...
  • eNohtZvQiJxo00aTz3y8
  • eNohtZvQiJxo00aTz3y8
  • 2017年12月08日 00:00
  • 555

零基础写python爬虫之爬虫编写全记录

先来说一下我们学校的网站: http://jwxt.sdu.edu.cn:7777/zhxt_bks/zhxt_bks.html 查询成绩需要登录,然后显示各学科成绩,但是只显示成绩而没有绩点,也...
  • hmy1106
  • hmy1106
  • 2015年04月18日 14:37
  • 9122

python简单爬虫代码,python入门

python简单爬虫代码 python入门
  • tangdou5682
  • tangdou5682
  • 2016年09月20日 15:55
  • 4851

Python面试题 基础篇

最近,整理了一些python常见的面试题目,语言shizhong
  • database_zbye
  • database_zbye
  • 2014年08月08日 13:15
  • 13155

机器学习小试(1)TensorFlow的第一个程序

最近,因为项目需要开始接触机器学习。虽然在学校对神经网络等算法已有接触,但早已忘得差不多了。在学习TF之前,建议和我一样,先从理论背景开始看起。...
  • goldenhawking
  • goldenhawking
  • 2017年07月05日 12:58
  • 696

Python爬虫小试身手

爬虫经常看到有人用Python作爬虫玩,自己也手痒痒,之前看过一些介绍,但是当时什么都不懂,html和计算机网络都不知道是什么。现在算是懂一点点了,就学着写一个玩玩。感觉爬虫主要就是获取目标网站的源代...
  • csdn_moming
  • csdn_moming
  • 2016年04月16日 20:35
  • 804

Python爬虫开发(一):零基础入门

0×00 介绍 0×01 要求 0×02 你能学到什么? 0×03 知识补充 0×04 最简单的开始 0×05 更优雅的解决方案 0×06 url合法性判断 0×07 总结与预告...
  • in_aday
  • in_aday
  • 2016年02月29日 14:43
  • 1116

零基础自学用Python 3开发网络爬虫(五): 使用第三方模块快速抓取与解析

点击进入本系列目录 在前面的四篇文章中, 我们一直采用 python 3 自带的 urllib  模块来抓取网页, 然后用 re 模块来处理抓取到的数据. 这次我们使用 Requests 库来代替 ...
  • IAlexanderI
  • IAlexanderI
  • 2017年03月28日 15:27
  • 987

python + 机器学习 + 爬虫

Python在这方面的package非常齐全: 网页爬虫: scrapy(不太清楚) 数据挖掘: numpy, scipy, matplotlib, pandas(头三个是业界标准,第四个模拟R) ...
  • xiangyong58
  • xiangyong58
  • 2016年06月03日 22:08
  • 1871
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Python基础学习-爬虫小试2
举报原因:
原因补充:

(最多只允许输入30个字)