python xpath爬取新闻标题_爬取知乎热榜标题和连接 (python,requests,xpath)

用python爬取知乎的热榜,获取标题和链接。

环境和方法:ubantu16.04、python3、requests、xpath

1.用浏览器打开知乎,并登录

2.获取cookie和User—Agent

3.上代码

import requests

from lxml import etree

def get_html(url):

headers={

'Cookie':'你的Cookie',

#'Host':'www.zhihu.com',

'User-Agent':'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.102 Safari/537.36'

}

r=requests.get(url,headers=headers)

if r.status_code==200:

deal_content(r.text)

def deal_content(r):

html = etree.HTML(r)

title_list = html.xpath('//*[@id="TopstoryContent"]/div/section/div[2]/a/h2')

link_list = html.xpath('//*[@id="TopstoryContent"]/div/section/div[2]/a/@href')

for i in range(0,len(title_list)):

print(title_list[i].text)

print(link_list[i])

with open("zhihu.txt",'a') as f:

f.write(title_list[i].text+'\n')

f.write('\t链接为:'+link_list[i]+'\n')

f.write('*'*50+'\n')

def main():

url='https://www.zhihu.com/hot'

get_html(url)

main()

4.爬取结果

python抓取知乎热榜

知乎热榜讨论话题,https://www.zhihu.com/hot,本文用python抓取下来分析 #!/usr/bin/python # -*- coding: UTF-8 -*- from ur ...

python实战项目 — 使用bs4 爬取猫眼电影热榜(存入本地txt、以及存储数据库列表)

案例一: 重点: 1. 使用bs4 爬取 2. 数据写入本地 txt from bs4 import BeautifulSoup import requests url = "http:// ...

16、爬取知乎大v张佳玮的文章“标题”、“摘要”、“链接”,并存储到本地文件

爬取知乎大v张佳玮的文章“标题”.“摘要”.“链接”,并存储到本地文件 # 爬取知乎大v张佳玮的文章“标题”.“摘要”.“链接”,并存储到本地文件 # URL https://www.zhihu.co ...

使用python scrapy爬取知乎提问信息

前文介绍了python的scrapy爬虫框架和登录知乎的方法. 这里介绍如何爬取知乎的问题信息,并保存到mysql数据库中. 首先,看一下我要爬取哪些内容: 如下图所示,我要爬取一个问题的6个信息: ...

scrapy 爬取知乎问题、答案 ,并异步写入数据库(mysql)

python版本  python2.7 爬取知乎流程: 一 .分析 在访问知乎首页的时候(https://www.zhihu.com),在没有登录的情况下,会进行重定向到(https://www. ...

40行代码爬取猫眼电影TOP100榜所有信息

主要内容: 一.基础爬虫框架的三大模块 二.完整代码解析及效果展示 1️⃣  基础爬虫框架的三大模块 1.HTML下载器:利用requests模块下载HTML网页. 2.HTML解析器:利用re正则表 ...

通过scrapy,从模拟登录开始爬取知乎的问答数据

这篇文章将讲解如何爬取知乎上面的问答数据. 首先,我们需要知道,想要爬取知乎上面的数据,第一步肯定是登录,所以我们先介绍一下模拟登录: 先说一下我的思路: 1.首先我们需要控制登录的入口,重写star ...

一个简单的python爬虫,爬取知乎

一个简单的python爬虫,爬取知乎 主要实现 爬取一个收藏夹 里 所有问题答案下的 图片 文字信息暂未收录,可自行实现,比图片更简单 具体代码里有详细注释,请自行阅读 项目源码: # -*- cod ...

python定时器爬取豆瓣音乐Top榜歌名

python定时器爬取豆瓣音乐Top榜歌名 作者:vpoet mail:vpoet_sir@163.com 注:这些小demo都是前段时间为了学python写的,现在贴出来纯粹是为了和大家分享一下 # ...

随机推荐

IOS - 首次启动程序出现的画面介绍

1.在appdelegate.m中找到 “application:didFinishLaunchingWithOptions:” 通过NSUserDefaults 来进行判断 if (![[NSUse ...

windows下使用TortoiseGit代替Git命令行操作

windows下使用TortoiseGit代替Git命令行操作 大家在使用svn的时候,都非常喜欢使用小乌龟,也就是TortoiseSVN:那么git也有小乌龟版本,即TortoiseGit. 1.安 ...

在android中使用achartengine来绘制各种图表

可以绘制线性图,点状图,柱状图,饼状图,气泡图等 1. [文件] ABarChart.java ~ 2KB     下载(231) ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 ...

HTML5画布(矩形)

canvas元素用于绘制图形. canvas元素是HTML5中新增的一个重要元素,元素本身是没有绘图能力,所有的绘制工作必须在javascript内部完成. 案例1: ..

mysql各种日志对应的配置项

01.error_log --log-error= 02.general_log --general-log-file= --gen ...

python 类属性、对象属性

类的普通属性: dir(Myclass), 返回一个key列表: Myclass.__dir__,返回一个字典: 1.类的数据属性: 2.类的方法: 类的特殊属性: 1.Myclass.__name_ ...

Python3基础 定义有参数有返回值函数 对传入的参数加1

镇场诗: 诚听如来语,顿舍世间名与利.愿做地藏徒,广演是经阎浮提. 愿尽吾所学,成就一良心博客.愿诸后来人,重现智慧清净体.-------------------------------------- ...

Apache启动不成功时,用命令行检测(新手)

1,在配置Apache服务器时,经常要在httpd.conf 修改和添加一些代码,编写中,误写或者写错时,无法正常启动时,直接报错The requested operation has failed! ...

LeetCode——Binary Search Tree Iterator

Description: Implement an iterator over a binary search tree (BST). Your iterator will be initialize ...

***XX-net 和 proxyee-down

看连接吧,留着方便自己查看 https://github.com/XX-net/XX-Net https://github.com/monkeyWie/proxyee-down/blob/master ...