几行代码抓取百度首页

python中源码位置(以urllib为例):
    python中自带的模块:
        /usr/lib/python3.5/urllib/request.py(python3)
        /usr/lib/python2.7/urllib2.py(python2)
    python的第三方模块:
        /usr/local/lib/python2.7/site-packages/

注意:关于urllib模块,python3中的导入方法为import urllib.request.方法名

例子1:返回百度首页内容:

    #!/usr/bin/env python
    # coding=utf-8

    import urllib2
    #向指定的URL地址发送请求,并返回服务器响应的类文件对象
    response = urllib2.urlopen("http://www.baidu.com")

    #服务器返回的类文件对象支持python文件对象的操作方法 
    #read()方法就是读取文件里的全部内容,返回字符串
    html = response.read()

    #打印响应内容
    print(html)

    注意:urlopen可以直接请求一个类文件对象,但是它不支持请求头构造(
    在反爬过程中,服务器可能会查看我们的请求头,而默认的请求头很容易被识别
    为爬虫,如python爬虫头部的User-Agent为Python-urllib/%s" % __version__
    可以通过查看urllib2源码或抓包查看.
    

    ),所以生产中的写法如下:
    #!/usr/bin/env python
    # coding=utf-8

    import urllib2

    #User-Agent是爬虫和反爬虫的第一步
    ua_headers = {
        "User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3253.3 Safari/537.36",
    }

    #通过urllib2.Request()方法构造一个请求对象
    request = urllib2.Request("http://www.baidu.com",headers = ua_headers)

    #向指定的URL地址发送请求,并返回服务器响应的类文件对象
    response = urllib2.urlopen(request)

    #服务器返回的类文件对象支持python文件对象的操作方法 
    #read()方法就是读取文件里的全部内容,返回字符串
    html = response.read()

    #打印响应内容
    print(html)

    #打印返回的状态码
    print(response.getcode())

    #打印具体返回页面的是哪个URL
时间: 2024-09-30 20:40:12

几行代码抓取百度首页的相关文章

用pyquery5行代码爬取百度热点新闻

导读:学习python爬虫很久了,一直习惯于requests抓取+xpath解析的两步走套路,直到我今天发现了pyquery这个爬虫利器后,才意识到python的世界没有最简,只有更简…… 2020-03-06 21:22:12 01 pyquery简介 pyquery是Python的一个第三方爬虫库,仿照 jQuery实现,语法与js十分相像.如果有js基础,那么应用pyquery简直是平步青云.pyquery自带网页解析和信息提取功能,所以应用起来会非常简洁. pyquery安装(要求css

java爬取百度首页源代码

爬虫感觉挺有意思的,写一个最简单的抓取百度首页html代码的程序.虽然简单了一点,后期会加深的. 1 package test; 2 3 import java.io.BufferedReader; 4 import java.io.InputStreamReader; 5 import java.net.URL; 6 import java.net.URLConnection; 7 8 public class Main 9 { 10 public static void main(Strin

php抓取百度快照、百度收录、百度热词程序代码

<?/*抓取百度收录代码*/function baidu($s){ $baidu="http://www.baidu.com/s?wd=site%3A".$s; $site=file_get_contents($baidu); //$site=iconv("gb2312", "UTF-8", $site); ereg("找到相关网页(.*)篇,", $site,$count); $count=str_replace(&q

Python3抓取百度贴吧图片

我抓取的地址是http://tieba.baidu.com/p/3125473879?pn=2,这个帖子共有82页左右,下面的代码主要抓取82页的所有图片,具体代码如下: """抓取百度贴吧图片""" #导入模块 import re import urllib from urllib.request import urlopen,urlretrieve #获取抓取页面的源代码 def getHtml(url):     page = urlope

爬虫抓取百度贴吧帖子内容

上篇文章已经介绍了抓取糗事百科的段子,这篇文章来抓取百度贴吧帖子内容,涉及到urllib,urllib2,re等模块. 代码实现功能: 1.获取某一个帖子的标题 2.获取帖子回复的所有页数,以及每一页的内容 3.可以只获取楼主的回复(使用数字1声明),或者所有回复(使用数字0声明) 直接使用oop编程的方式编写代码: 代码如下: #!/usr/bin/env python #coding:utf8 import urllib import urllib2 import re #处理页面标签类 c

Python实现抓取CSDN首页文章列表

1.使用工具: Python3.5 BeautifulSoup 2.抓取网站: csdn首页文章列表 http://blog.csdn.net/ 3.实现代码: __author__ = 'Administrator' import urllib.request import re from bs4 import BeautifulSoup ######################################################## # # 抓取csdn首页文章http://

用PHP抓取百度贴吧邮箱数据

注:本程序可能非常适合那些做百度贴吧营销的朋友. 去逛百度贴吧的时候,经常会看到楼主分享一些资源,要求留下邮箱,楼主才给发. 对于一个热门的帖子,留下的邮箱数量是非常多的,楼主需要一个一个的去复制那些回复的邮箱,然后再粘贴发送邮件,不是被折磨死就是被累死.无聊至极写了一个抓取百度贴吧邮箱数据的程序,需要的拿走. 程序实现了一键抓取帖子全部邮箱和分页抓取邮箱两个功能,界面懒得做了,效果如下: 老规矩,直接贴源码 <?php $url2=""; $page="";

C#.Net使用正则表达式抓取百度百家文章列表

工作之余,学习了一下正则表达式,鉴于实践是检验真理的唯一标准,于是便写了一个利用正则表达式抓取百度百家文章的例子,具体过程请看下面源码: 一:获取百度百家网页内容 1 public List<string[]> GetUrl() 2 { 3 try 4 { 5 string url = "http://baijia.baidu.com/"; 6 WebRequest webRequest = WebRequest.Create(url); 7 WebResponse web

Unreal渲染相关的缓冲区 及其 自定义代码抓取

@authot: 白袍小道 以下为Unreal4.18版本中对GPUBuffer部分的分析结果 (插入:比之够着,知至目的) ? ? Memo of GBuffer (UE4.18) ? ? GBufferA : Normal(rgb), PerObjectGBufferData(a) ? ? GBufferB : Metallic(r), Specular(g), Roughness(b), ShadingModelID(a&0xF), ? ? SelectiveOutputMask(a&