更改 python mechanize 中的链接

2024-03-31

我正在尝试编写一个 python 脚本来生成我的批次的排名列表。为此,我只需使用网络浏览器中的检查元素功能更改链接的卷号参数。链接(相对)看起来像:

/academic/utility/AcademicRecord.jsp?loginCode=000&loginnumber=000&loginName=name&Home=ascwebsite

我只需要更改登录代码即可获取我的批次伙伴的成绩。我正在尝试使用 python 迭代所有的卷号并生成一个排名列表。我使用 mechanize 库使用 python 打开该网站。代码的相关部分:

br = mechanize.Browser()
br.set_handle_robots(False)
response = br.open('link_to_the_page')

然后,我进行必要的身份验证并导航到相应的页面,其中包含查看成绩的链接。
然后我找到了这样的相关链接:

for link in br.links(url_regex='/academic/utility/AcademicRecord.jsp?'):

现在,我在其中适当更改链接的 url 和属性。 然后我使用以下命令打开链接:

response=br.follow_link(link)
print response.read()

但这不起作用。它会打开相同的链接,即带有初始卷号的链接。事实上,我尝试将链接的 url 更改为非常不同的内容,例如http://www.google.com http://www.google.com.

link.url='http://www.google.com'
link.base_url='http://www.google.com'

它仍然打开相同的页面,而不是谷歌的页面。 任何帮助将不胜感激。


根据源代码 https://github.com/jjlee/mechanize/blob/068fc642ae705aa0c71732db4b77d342e5b23628/mechanize/_mechanize.py#L558, follow_link() and click_link()使用链接的absolute_url期间设置的属性链接初始化 https://github.com/jjlee/mechanize/blob/068fc642ae705aa0c71732db4b77d342e5b23628/mechanize/_html.py#109。并且,您只设置url and base_url特性。

解决方案是改变absolute_url循环中的链接:

BASE_URL = 'link_to_the_page'
for link in br.links(url_regex='/academic/utility/AcademicRecord.jsp?'):
    modified_link = ...
    link.absolute_url = mechanize.urljoin(BASE_URL, modified_link)
    br.follow_link(link)

希望有帮助。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

更改 python mechanize 中的链接 的相关文章

  • ca 证书 Mac OS X

    我需要在emacs 上安装offlineimap 和mu4e 问题是配置 当我运行 Offlineimap 时 我得到 OfflineIMAP 6 5 5 Licensed under the GNU GPL v2 v2 or any la
  • 如何在 Google App Engine 的 Python 中获取 StringProperty 的值?

    如何获取 nbd Model 的值 我想返回由多个字段组成的描述 但我无法让它工作 这是我的班级代码 class User ndb Model name ndb StringProperty email ndb StringProperty
  • 如何使用 Python 裁剪图像中的矩形

    谁能给我关于如何裁剪两个矩形框并保存它的建议 我已经尝试过这段代码 但效果不佳 import cv2 import numpy as np Run the code with the image name keep pressing spa
  • 如何让python优雅地失败?

    我只是想知道如何让 python 在所有可能的错误中以用户定义的方式失败 例如 我正在编写一个处理 大 项目列表的程序 并且某些项目可能不符合我定义的格式 如果 python 检测到错误 它目前只会输出一条丑陋的错误消息并停止整个过程 但是
  • Pandas 连接问题:列重叠但未指定后缀

    我有以下数据框 print df a mukey DI PI 0 100000 35 14 1 1000005 44 14 2 1000006 44 14 3 1000007 43 13 4 1000008 43 13 print df b
  • Tipfy:如何在模板中显示blob?

    鉴于在 gae 上使用tipfy http www tipfy org python 以下模型 greeting avatar db Blob avatar 显示 blob 此处为图像 的模板标签是什么 在这种情况下 斑点是一个图像 这很棒
  • 使用 pandas 将字符串对象转换为 int/float

    import pandas as pd path1 home supertramp Desktop 100 life 180 data csv mydf pd read csv path1 numcigar Never 0 1 5 Ciga
  • Paramiko SSHException 通道已关闭

    我一直在使用 Paramiko 在 Linux Windows 机器上发送命令 它可以很好地在 Ubuntu 机器上远程执行测试 但是 它不适用于 Windows 7 主机 以下是我收到的错误 def unit for event self
  • 如何使用 i18n 切换器将“LANGUAGE_CODE”保存到数据库,以便在 Django 中的不同浏览器中语言不会更改?

    有什么办法可以改变它的值LANGUAGE CODE单击按钮 发送请求 时 settings py 中的变量会动态变化吗 我希望用户设置自己的 默认语言 他们的帐户 现在 用户可以使用下拉列表选择他们的首选语言 并且网站会得到完美的翻译 并且
  • 在Python中以交互方式执行多行语句

    我是 Python 世界的新手 这是我用 Python 编写的第一个程序 我来自 R 世界 所以这对我来说有点不直观 当我执行时 In 15 import math import random random random math sqrt
  • 如何在Python代码中查找列号

    简短问题 当按上述方式调用函数时 我可以找到行号here https stackoverflow com questions 3056048 filename and line number of python script 同样 如何找到
  • 如何将类添加到 LinkML 中的 SchemaDefinition?

    中的图表https linkml io linkml model docs SchemaDefinition https linkml io linkml model docs SchemaDefinition and https link
  • 为什么 __instancecheck__ 没有被调用?

    我有以下 python3 代码 class BaseTypeClass type def new cls name bases namespace kwd result type new cls name bases namespace p
  • Selenium 不会在新选项卡中打开新 URL(Python 和 Chrome)

    我想使用 Selenium WebDriver 和 Python 在不同的选项卡中打开相当多的 URL 我不确定出了什么问题 driver webdriver Chrome driver get url1 time sleep 5 driv
  • 根据列索引重命名 Dataframe 列

    是否有内置函数可以按索引重命名 pandas 数据框 我以为我知道列标题的名称 但事实证明第二列中有一些十六进制字符 根据我接收数据的方式 我将来可能会在第 2 列中遇到这个问题 因此我无法将这些特定的十六进制字符硬编码到 datafram
  • 在Python中连续解析文件

    我正在编写一个脚本 该脚本使用 HTTP 流量行解析文件 并取出域 目前仅将它们打印到屏幕上 我正在使用 httpry 将流量连续写入文件 这是我用来删除域名的脚本 usr bin python import re input open r
  • Python 导入非常慢 - Anaconda python 2.7

    我的 python import 语句变得非常慢 我使用 Anaconda 包在本地运行 python 2 7 导入模块后 我编写的代码运行得非常快 似乎只是导入需要很长时间 例如 我使用以下代码运行了一个 tester py 文件 imp
  • 沿轴 0 重复 scipy csr 稀疏矩阵

    我想重复 scipy csr 稀疏矩阵的行 但是当我尝试调用 numpy 的重复方法时 它只是将稀疏矩阵视为对象 并且只会将其作为 ndarray 中的对象重复 我浏览了文档 但找不到任何实用程序来重复 scipy csr 稀疏矩阵的行 我
  • 使用 SERVER_NAME 时出现 Flask 404

    在我的 Flask 配置中 我将 SERVER NAME 设置为 app example com 之类的域 我这样做是因为我需要使用url for with external网址 如果未设置 SERVER NAME Flask 会认为服务器
  • Python 中的字符串slugification

    我正在寻找 slugify 字符串的最佳方法 蛞蝓 是什么 https stackoverflow com questions 427102 in django what is a slug 我当前的解决方案基于这个食谱 http code

随机推荐

  • 通用语言对 PCRE(Perl 兼容正则表达式)有哪些支持?

    我对 PCRE Perl 兼容正则表达式 的强大功能很感兴趣 并且想知道它们是否有可能成为所有主要语言中事实上的方法 我对 Java 感兴趣 如果有必要 我准备使用图书馆 我也无法在 SO 中找到一个很好的页面来描述 PCRE 的优缺点 因
  • Web 服务存根生成 + android

    我想生成一个基于 android java 的 STUB 来访问所有 Web 服务 我尝试使用以下工具生成存根 1 用于 CLDC 的 Sun Java TM 无线工具包 2 5 2 01 2 ksoap2 生成 stub 0 1 SNAP
  • 我可以使用特征稀疏矩阵来满足一般存储需求吗

    我需要一个模板化的稀疏矩阵实现 但只是为了减少内存占用 not进行任何数值求解 所以我尝试使用 Eigen 尽管我不需要数学部分 为什么 它恰好就在我的机器上 而且我已经用它来做其他事情了 但我肯定不是本征专家 Context 我有一个类型
  • 使用 LINQ 查询初始化 List

    我正在初始化一个List
  • Perl chomp 将多位数字变成 1 或 0

    我遇到一种情况 我需要用 Perl 读取一个充满数字的文件 这本身工作得很好 但是当我尝试删除每一行时 它会将以前的 5 或 6 位数字变成 1 或 0 Ideas 我需要对数字进行咀嚼以将文件路径与它们组合起来 因此回车符是一个问题 你没
  • 如何从 BroadcastReceiver 发出通知?

    如何从 BroadcastReceiver 发出通知 不能使用大多数方法 也不能使用 this 我需要它来打开一个包含数据库信息的活动我已经做到了 但现在必须的方法不起作用 我不能使用 这个 In the onReceive方法你得到一个C
  • LibGDX 将 BitmapFont 绘制到中间位置(spritebatch)

    我想使用 BitmapFont 绘制一些文本 临时位置 然后绘制该位置的一部分 到最后的精灵批次 我当时正在考虑画画 到临时 spritebatch 但不可能 将 spritebatch 绘制到另一个上 我怎样才能做到这一点 您可以使用帧缓
  • C - 返回指向局部变量的指针的函数

    考虑以下代码 include
  • Oracle 10g PL/SQL Connect By Prior 返回同一行上的子级和父级

    Table1 Child Parent a Bob Chris 2 Chris Kate 1 Shane Lana 3 Nala Bob 4 Table2 b Talent 1 something 2 nothing 3 something
  • CurrentThreadTaskScheduler 未完成同步

    我尝试为视图模型编写单元测试 但在尝试验证 ICommand 调用异步方法两次时遇到了困难 我使用 Moq 作为我的依赖项 我像这样设置了异步方法 this communicationServiceFake Setup x gt x Wri
  • 将列表的 2 个数据框中的因子转换为数值

    我在将列表中 2 个数据框的列转换为数字时遇到问题 现在两个数据框都有 2 列由因素组成 我想将它们转换为数字 以便我可以对它们进行数学运算 下面是示例代码 library XML bal lt http www baseball refe
  • 为什么不总是使用 HTTP post 进行 ajax 调用?

    我知道 HTTP get 和 post 方法之间的区别 如详细信息中所述this https stackoverflow com questions 46585 when do you use post and when do you us
  • 如何在 GWT 中实现 JQueryUI 滑块

    我最近需要在 GWT 中实现一个滑块来捕获用户在任务上取得的进度百分比 我对 GWT 孵化器中的滑块并不满意 并且不太热衷于使用 spiffy UI 或 SmartGWT 等外部库 我可以使用哪些替代方案在 GWT 中实现有效的滑块 而不需
  • Spark:在不更改列的可为空属性的情况下转换小数

    将列转换为DecimalType in a DataFrame似乎改变了可为空的属性 具体来说 我有一个不可为空的类型列DecimalType 12 4 我把它投射到DecimalType 38 9 using df withColumn
  • 2d(3d) 坐标的哈希图(即双精度向量)?

    我想知道是否有一个通用的全能解决方案hash map对于坐标 2d 或 3d 即双精度向量 一个例子here https stackoverflow com questions 7222143 unordered map hash func
  • 如何从 POSIX 文件描述符构造 C++ fstream?

    我基本上是在寻找 fdopen 的 C 版本 我对此做了一些研究 这是看起来应该很容易但事实证明非常复杂的事情之一 我是否在这个信念中遗漏了一些东西 即它真的很容易 如果没有 是否有一个好的图书馆可以处理这个问题 编辑 将我的示例解决方案移
  • 通过 XSLT 用 XHTML 中的标签替换 style= 属性

    假设我在 XHTML 页面中有以下内容 span style color 555555 font style italic some text span 我将如何将其转换为 span style color 555555 em some t
  • Python Tkinter GUI 自动化

    我想进入 GUI 自动化领域 以便在我自己的程序上运行测试 我想要测试的程序是用 Python 编写的 并使用 Tkinter 作为 GUI 测试代码不一定必须是Python CPP 也可以 我做了一些研究 我已经面临一个问题 根据我的研究
  • 找不到 sbt 启动器 0.11.2

    我有一个Play 2 0使用的应用程序sbt 0 11 2 但是当我建立一个新的Play服务器 它抓取了最新版本sbt 0 11 3 现在当我跑步时sbt compile在新服务器上 它抱怨 Detected sbt version 0 1
  • 更改 python mechanize 中的链接

    我正在尝试编写一个 python 脚本来生成我的批次的排名列表 为此 我只需使用网络浏览器中的检查元素功能更改链接的卷号参数 链接 相对 看起来像 academic utility AcademicRecord jsp loginCode