2016-09-06 46 views
0

我正在使用Python3.4。我使用pip从GitHub安装了一个“itunespy”库,以使用iTunes API。
https://github.com/spaceisstrange/itunespy需要更改已安装库的源代码

我现在可以从控制台通过

import itunespy 

访问图书馆除外只通过iTunes搜索阿比美店,而我需要访问英国的商店。我查看了代码,发现我只需要更改两行来解决我的问题。

请你告诉我如何访问和更改已安装库的源代码。

谢谢。

+0

'itunespy .__ file__'会显示导入模块/包的路径。 –

+0

非常感谢你 –

回答

1
  • 叉库
  • 克隆分叉库
  • 进行更改,然后推到远程(原产地,通常情况下)
  • 您可能点子从你的叉子安装
+1

我会添加一些关于提交拉取请求的信息,建议软件包作者合并你的修改,因为听起来这个修改通常是有用的。否则,分叉就没什么意义了 - 你也可以将它克隆并在本地进行编辑。 –

+0

您可能会对PR进行更改以使其可配置。 @David通过克隆和编辑的问题是,您需要提交和版本控制外部模块。否则,将来的安装会导致更改丢失。 – Jaipradeesh

+0

分叉的一个缺点是,您可能需要使用上游(通常)远程更新叉子。否则,对原始模块的更改不会反映在您的分支中。 – Jaipradeesh

0

你真的想改变源代码? 如何改变你的实现?从类

  • 覆盖

    • 继承/重载其方法与自己的
    • 的工作与你的继承类和它们的方法

    亲:如果在原有的库变化当你更新(安全补丁等)时,你会带着它们一起使用,但是你的覆盖/重载方法仍然是你使用的方法。

    否则,如果你真的想喜欢通过dolftax提到

  • 0

    我看了看source code,并更改源代码,从GitHub采取了分公司,并更改源代码,你需要它:

    a)您可能会明显改变你的源代码在本地复制文件

    b)您可以在补丁运行时这些常量,比如增加这种类型的代码到你的主:

    import itunespy 
    itunespy.base_search_url = "NEW_VALUE" 
    itunespy.base_lookup_url = "NEW_VALUE" 
    

    c)库API似乎提供国家关键字参数,所以你不必做任何上述的这些黑客攻击。简单地做:

    itunespy.search_track('something', country='UK') 
    

    包含此关键字的参数,如预期没有源代码的任何修改搜索应该工作。