当前位置: 首页 > 知识库问答 >
问题:

使用登录信息刮网站与python

呼延宪
2023-03-14

我正试图使用lxml从我订阅的新闻网站上刮取文章。

我在电脑上的每个浏览器上都登录了网站(这不重要吗?),但每当我试图从特定文章中获取任何文本时,请使用以下命令:

页面=请求。得到(”http://www.SomeWebsite.com/blah/blah/blah.html")

tree=html。fromstring(page.text)

文章=tree.xpath('//div/p/text()')

我得到以下回应:

['您已经查看了您的免费文章。如果您想查看更多,请单击下面的按钮。']

有什么想法或建议来解决这个问题吗?

免责声明:我是Python和网络抓取的新手

编辑:下面发布的解决方案使用硒库

共有2个答案

解宏扬
2023-03-14

因此,基本上你想刮一个网站,并显示在你的网站,可能在一个更好的方式。

因此,我建议使用和服,它是一种网络抓取服务,它将为您提供api,以便以适当的模型获取数据。

看看吧,IT应该能完成你的工作。

如果没有,您可以用PHP(PHP简单HTML DOM解析器)或Javascript创建自己的scraper,Javascript中也有库。

很抱歉,对Python一无所知,但是使用Kimono的api,您也可以在Python中实现。

希望有帮助!

快乐编码!!!

孟昊空
2023-03-14

因此,我试图抓取的网站拒绝了我将发送的所有post请求(我尝试了Python、R和PHP),我发现我只能用实际的浏览器加载新闻文章。

多亏了@duhaime,我用Selenium实现了这一点。这是我的密码:

import selenium
from selenium import webdriver

# I used Firefox, but you could use Chrome or IE
browser = webdriver.Firefox()

browser.get('http://www.SomeWebsite.com/login')
# I needed to stop the script here to actually login.
# I tried to use an existing profile w/ my username & password but the website
# rejected my profile info and locked me out of the account

browser.get('http://www.SomeWebsite.com/blah/blah/blah.html')

element = browser.find_element_by_id("TheElementYouNeed").text
# This downloads all the text from the article at this particle 'id' element

硒绑定文档:http://selenium-python.readthedocs.org/en/latest/installation.html#introduction

 类似资料:
  • 问题内容: 我正在尝试使用Python登录到此页面。 我尝试使用另一篇文章中描述的步骤,并获得了以下代码: 但这给了我以下输出: 我究竟做错了什么? 问题答案: 我建议使用精彩的模块。 下面的代码将使您登录到该站点,并在会话期间将cookie保留下来。

  • 问题内容: 在此网站上,您可以输入您的学生卡号,然后显示该卡上还剩多少钱。我想使用JSOUP获得信息。这是我当前的代码,但是不起作用, 我没有太多经验,所以我不知道在哪里寻找问题。一些想法: 我应该使用还是? 在使用chrome devoloper工具时,发布数据是我使用功能发送的所有数据。但是,如果发送时出现错误,为什么? 我应该发送解密或加密的数据吗?(两者均在chrome devoloper

  • 问题内容: 我想用Java登录到一个网站。我使用的是org.apache.http,我已经写了 尽管我仍然无法登录,但它正确发送了我测试过的帖子表格。我要登录的网站是http://www.xtratime.org/forum/ 关于此的任何想法或是否有其他方法? 问题答案: 在提交页面之前,请对密码进行编码()。您应该在代码中执行相同的操作。 该属性的值与您的代码()不匹配。您应该将发布请求发送到

  • 问题内容: 我正在尝试从此站点http://cheese.formice.com/maps/@5865339获取信息,但是当我请求使用urllib.urlopen时,它说我需要登录,我正在使用此代码: 我做错了什么? 问题答案: 它不是直接使用,但是您可能会发现使用该包更容易。有一个对象看到这个答案 这将使您登录到该站点。您可以通过以下方式进行验证: 登录后,您可以调用所需的特定网址。

  • 我正试着从下面的网站刮取一些信息。我是新来的,所以不完全了解正在发生的事情。我基本上是从我在互联网上找到的各种例子中获取信息,我正在使用selenium和python来帮助我导航到页面,从那里我可以刮取一些信息,我使用了下面的脚本,我可以导航到主页,关闭cookies并点击登录。此时,将弹出一个用于输入用户id和密码的弹出窗口div元素未被识别,每次我得到的错误是不存在这样的元素时,我添加了具有预

  • 我试图登录使用领英J汤,我已经尝试了几种方法,但总是遇到错误403,我哪里出错了? 测试一 错误控制台 组织。jsoup。HttpStatusException:获取URL时发生HTTP错误。状态=403,URL=https://www.linkedin.com在org。jsoup。帮手HttpConnection$响应。在org上执行(HttpConnection.java:590)。jsoup