Python and xslt

Ok, I'm an infant in Python and I've got a problem that is driving me nuts.
I download a xml page(with terrible formatting), then use xslt to format the page into a workable form, and save the result to a new file.  But when I try to read the new file so that I can parse it, I get "Permission denied" messages.  I have something like this:
def formatPage():
styledoc = libxml2.parseFile(whatever.xslt)
style = libxslt.parseStylesheetDoc(styledoc)
doc = libxml2.parseFile(foo)
result = style.applyStylesheet(doc, None)
style.saveResultToFilename(foo_bar, result, 0)
style.freeStylesheet()
doc.freeDoc()
result.freeDoc()
def parsePage():
temp_file = os.popen(foo_bar)
file = temp_file.read()
I'm assuming that "foo_bar" is still open by xslt and that's why I can't read the file.  But for the life of me, I can't figure out how to relinquish control of the file.
Thanks for any help.

arooaroo wrote:
I may be misinterpreting your intentions, but to os.popen is for running external commands (opens a pipe) and doesn't return a file object.
To read a file:
foobar = 'a_file.txt'
temp_file = open(foo_bar)
filecontents = temp_file.read()
Doh!  Now I feel silly.  :oops:   Originally I was reading straight from stdout and forgot to fix that when I realized I would have to read from a file.
Thanks arooaroo and twiistedkaos.

Similar Messages

  • ABAP , JAVA And XSLT Mapping Doc's

    Hi,
    I am new to SAP XI Any body please send me the Doc's Related to ABAP, JAVA And XSLT Mappings. Thanks in Advance.
    Regards
    Kiran.B

    Hi
    Refer to
    ABAP mapping:
    How to Use ABAP Mapping in XI 3.0
    JAVA mapping:
    http://help.sap.com/saphelp_nw04/helpdata/en/bd/c91241c738f423e10000000a155106/frameset.htm (Java mapping)
    XSLT mapping:
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/01a57f0b-0501-0010-3ca9-d2ea3bb983c1
    /people/prasadbabu.nemalikanti3/blog/2006/03/30/xpath-functions-in-xslt-mapping
    /people/sreekanth.babu2/blog/2005/01/05/design-time-value-mappings-in-xslt
    /people/anish.abraham2/blog/2005/12/22/file-to-multiple-idocs-xslt-mapping
    XSLT Mapping with java enhancement
    /people/pooja.pandey/blog/2005/06/27/xslt-mapping-with-java-enhancement-for-beginners
    XSLT - /people/dirk.roeckmann/blog/2006/07/26/grouping-xml-with-xslt--from-muenchian-method-to-xslt-20
    Regards,
    Kumar.
    Reward points if helpful!!

  • Launching programs from python and ncurses

    I've made a little menu launcher with python and ncurses. It works most of the time, but occationally it does nothing when I select a program to launch.
    This is how it works:
    1. A keyboard shortcut launches an xterm window that runs the program.
    2. I select some program, which is launched via this command:
    os.system("nohup " + "program_name" + "> /dev/null &")
    3. ncurses cleans up and python calls "sys.exit()"
    The whole idea with nohup is that the xterm window will close after I select an application, but the application will still start normally (this was a bit of a problem). This works most of the time, but sometimes nothing happens (it never works the first time I try launching a program after starting the computer, the other times are more random).
    So, has anyone got an idea of what's going on or a better solution than the nohup hack?
    The whole code for the menu launcher is below. It's quite hackish, but then again it was just meant for me. The file's called "curmenu.py", and I launch it with an xbindkeys shortcut that runs "xterm -e curmenu.py".
    #!/usr/bin/env python
    import os,sys
    import curses
    ## Variables one might like to configure
    programs = ["Sonata", "sonata", "Ncmpc", "xterm -e ncmpc", "Emacs", "emacs", "Firefox", "swiftfox",\
    "Pidgin", "pidgin", "Screen", "xterm -e screen", "Thunar", "thunar", \
    "Gimp", "gimp", "Vlc", "vlc", "Skype", "skype"]
    highlight = 3
    on_screen = 7
    ## Functions
    # Gets a list of strings, figures out the middle one
    # and highlights it. Draws strings on screen.
    def drawStrings(strings):
    length = len(strings)
    middle = (length - 1)/2
    for num in range(length):
    addString(strings[num], middle, num, length)
    stdscr.refresh()
    def addString(string, middle, iter_step, iter_max):
    if iter_step < iter_max:
    string = string + "\n"
    if iter_step == middle:
    stdscr.addstr(iter_step + 1, 1, string, curses.A_REVERSE)
    else:
    stdscr.addstr(iter_step + 1, 1, string)
    # Returns a list of strings to draw on screen. The
    # strings chosen are centered around position.
    def listStrings(strings, position, on_screen):
    length = len(strings)
    low = (on_screen - 1)/2
    start = position - low
    str = []
    for num in range(start, start + on_screen):
    str = str + [strings[num % length]]
    return str
    ## Start doing stuff
    names = programs[::2]
    longest = max(map(lambda x: len(x), names))
    # Start our screen
    stdscr=curses.initscr()
    # Enable noecho and keyboard input
    curses.curs_set(0)
    curses.noecho()
    curses.cbreak()
    stdscr.keypad(1)
    # Display strings
    drawStrings(listStrings(names, highlight, on_screen))
    # Wait for response
    num_progs = len(names)
    low = (on_screen - 1)/2
    while 1:
    c = stdscr.getch()
    if c == ord("q") or c == 27: # 27 = "Escape"
    break
    elif c == curses.KEY_DOWN:
    highlight = (highlight + 1)%num_progs
    elif c == curses.KEY_UP:
    highlight = (highlight - 1)%num_progs
    elif c == curses.KEY_NPAGE:
    highlight = (highlight + low)%num_progs
    elif c == curses.KEY_PPAGE:
    highlight = (highlight - low)%num_progs
    elif c == 10: # actually "Enter", but hey
    os.system("nohup " + programs[2*highlight + 1] + "> /dev/null &")
    break
    drawStrings(listStrings(names, highlight, on_screen))
    # Close the program
    curses.nocbreak()
    stdscr.keypad(0)
    curses.echo()
    curses.endwin()
    sys.exit()

    Try:
    http://docs.python.org/lib/module-subprocess.html
    Should let you fork programs off into the background.

  • Java ,abap and XSLT mapping

    Hi all,
               can any one provide some material on java ,ABA and XSLT mapping(as i got requirement on my current project)..
    thanks in advance.
    regards
    krish..

    Hi
       All mapping related links
    There is no hard and fast rule for using the mapping techniques.
    Graphical Mapping is used for simple mapping cases. When, the logic for your mapping is simple and straight forward and it does not involve any complex logic.
    Java and XSLT mapping are used when graphical mapping cannot help you and you have multilevel hierarchy structure data.
    When the choice is between Java and XSLT, XSLT is simpler than java mapping and easier. But, it has its drawbacks. One among them being that you cannot use Java APIs and Classes in it. There might be cases in your mapping when you will have to perform something like a properties file look up or a DB lookup, such scenarios are not possible in XSLT and so, when you want to use some specific Java API's you will have to go for Java Mapping.
    Java Mapping uses 2 types of parsers. DOM and SAX. DOM is easier to use with lots of classes to help you create nodes and elements, but, DOM is very processor intensive.
    SAX parser is something that parses your XML one after the other, and so is not processor intensive. But, it is not exactly easy to develop either.
    To know more about each of them please go thru the following links. And if you ask me your which is better, it depends basically on the scenario you implementing and the complexity involved. Anyways please go thru the following links:
    Graphical mapping
    http://help.sap.com/saphelp_nw04/helpdata/en/6d/aadd3e6ecb1f39e10000000a114084/content.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/43/c4cdfc334824478090739c04c4a249/content.htm
    /people/bhanu.thirumala/blog/2006/02/02/graphical-message-mapping-150-text-preview
    http://www.sapgenie.com/netweaver/xi/mapping1.htm
    /people/alessandro.guarneri/blog/2006/01/26/throwing-smart-exceptions-in-xi-graphical-mapping
    XSLT mapping
    http://help.sap.com/saphelp_nw04/helpdata/en/73/f61eea1741453eb8f794e150067930/content.htm
    http://www.w3.org/TR/xslt20/
    JAVA mapping
    http://help.sap.com/saphelp_nw04/helpdata/en/e2/e13fcd80fe47768df001a558ed10b6/content.htm
    DOM parser API
    http://java.sun.com/j2se/1.4.2/docs/api/org/w3c/dom/package-frame.html
    ABAP mapping
    /people/r.eijpe/blog
    To know more about the value mapping tools for the SAP Exchange Infrastructure (XI), please go thru the following link:
    http://www.applicon.dk/fileadmin/filer/XI_Tools/ValueMappingTool.pdf
    To get an idea as to what value mapping is, please go thru the following links:
    http://help.sap.com/saphelp_nw04/helpdata/en/13/ba20dd7beb14438bc7b04b5b6ca300/frameset.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/f2/dfae3d47afd652e10000000a114084/frameset.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/2a/9d2891cc976549a9ad9f81e9b8db25/content.htm
    most of the links that I have provided also helps you get the step by step procedure of doing the same. And also involves the procedure to implement certain advanced features.
    And please go through this link which clearly explains the 3 types of mappings.
    /people/ravikumar.allampallam/blog/2005/02/10/different-types-of-mapping-in-xi
    regards
    Prasad

  • Can someone pleas tell me about abap, java and xslt mappings

    Hi,
    can someone please tell me about abap, java and xslt mappings.
    Thanks,
    Bernard.

    HI,
    JAVA mapping
    /people/prasad.ulagappan2/blog/2005/06/29/java-mapping-part-i /people/prasad.ulagappan2/blog/2005/06/29/java-mapping-part-ii /people/prasad.ulagappan2/blog/2005/06/29/java-mapping-part-iii /people/ravikumar.allampallam/blog/2005/06/24/convert-any-flat-file-to-any-idoc-java-mapping /people/amol.joshi2/blog/2006/03/10/think-objects-when-creating-java-mappings /people/sameer.shadab/blog/2005/09/29/testing-abap-mapping sample code for java mapping blog=/pub/wlg/4143 tutorial sax and dom
    ABAP mapping
    ABAP mappings run on ABAP Stack and are developed in the ABAP workbench of the Integration Server.
    You normally do not need to use the ABAP mappings and is preferable for someone with ABAP programming background. I should say JAVA functions would suffice any complex scenarios.
    refer step by step guides for ABAP Mapping
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/5c46ab90-0201-0010-42bd-9d0302591383
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/e3ead790-0201-0010-64bb-9e4d67a466b4
    /people/sameer.shadab/blog/2005/09/29/testing-abap-mapping
    ABAP Mapping
    /people/udo.martens/blog/2006/08/23/comparing-performance-of-mapping-programs
    https://websmp101.sap-ag.de/~sapdownload/011000358700003082332004E/HowToABAPMapping.pdf
    /people/ravikumar.allampallam/blog/2005/02/10/different-types-of-mapping-in-xi
    /people/r.eijpe/blog
    ABAP Mapping Vs Java Mapping.
    Re: Message Mapping of type ABAP Class not being shown
    Re: Performance of mappings (JAVA, XSLT, ABAP)
    XSLT Mapping
    XSLT stands for EXtensible Stylesheet Language Transformations. It is an XML based language for transforming XML documents into any other formats suitable for browser to display, on the basis of set of well-defined rules.
    /people/sap.user72/blog/2005/03/15/using-xslt-mapping-in-a-ccbpm-scenario
    /people/anish.abraham2/blog/2005/12/22/file-to-multiple-idocs-xslt-mapping
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/01a57f0b-0501-0010-3ca9-d2ea3bb983c1
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/9692eb84-0601-0010-5ca0-923b4fb8674a
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/006aa890-0201-0010-1eb1-afc5cbae3f15
    /people/prasadbabu.nemalikanti3/blog/2006/03/30/xpath-functions-in-xslt-mapping
    https://www.sdn.sap.com/irj/sdn/advancedsearch?cat=sdn_all&query=xslt+mapping&adv=false&sortby=cm_rnd_rankvalue#
    Steps required for developing XSLT Mapping
    u2022 Create a source data type and a target data type
    u2022 Create Message types for the source and target data types.
    u2022 Create Message Interfaces includes Inbound Message interface and Outbound Message interface.
    u2022 XSLT Mapping does not require creation of Message mapping, so donu2019t create any Message mapping.
    u2022 Create an .XSL file which converts source data type into target data type.
    u2022 Zip that .xsl file and import it into Integration Repository under Imported Archives.
    u2022 In Interface Mapping choose mapping program as XSL and specify this zip program. (Through search help you will get XSL Mapping programs that you imported under Imported Archives, select your corresponding XSL Program)
    u2022 Test this mapping program by navigating to Test tab.
    By having look at above steps you can easily find out that this mapping is no where different from other mapping programs, here the challenging lies in creating an XSLT file. If you spend couple of minutes in studying XPATH tutorial you would be in ideal position to create an XSL Transformation (.xsl extension).
    If you still find difficulties in generating XSL Transformation, then you can make use of a tool u201CAltova MapForceu201D which will create XSL file for you.
    Steps for creating XSL file using this tool:
    1. Open the Alto MapForce, import the source .xml and .xsd file in it
    2. Similarly import the target .xml and .xsd in MapForce.
    3. These two data files should match with source and target data types in Integration Repository.
    4. Complete the graphical mapping using extensive list of XSLT functions available there.
    5. Save the mapping file.
    6. Click the XSLT tab. You will have the entire xslt logic there.
    7. Copy that content and save it as .xsl file.
    8. Zip above .xsl file and import the same into IR under Imported Archives.
    Hope this clears your doubts
    Thanks
    Saiyog

  • Java and XSLT Mapping. Help required

    Hi All,
    Why I require Java Mapping and XSLT Mapping when I have Graphical mapping ?
    Please explain Java Mapping and XSLT Mapping with examples.
    Regards

    Hi,
    there are lot of thread alredy posted please serach
    check following link
    http://help.sap.com/saphelp_nw04/helpdata/en/ce/1d753cab14a909e10000000a11405a/frameset.htm
    XSLT Mapping:
    http://help.sap.com/saphelp_nw04/helpdata/en/73/f61eea1741453eb8f794e150067930/content.htm
    Java Mapping:
    http://help.sap.com/saphelp_nw04/helpdata/en/e2/e13fcd80fe47768df001a558ed10b6/content.htm
    Links of blogs on java mapping...
    /people/prasad.ulagappan2/blog/2005/06/29/java-mapping-part-i
    /people/prasad.ulagappan2/blog/2005/06/29/java-mapping-part-ii
    /people/prasad.ulagappan2/blog/2005/06/29/java-mapping-part-iii
    blog
    /people/sap.user72/blog/2005/03/15/using-xslt-mapping-in-a-ccbpm-scenario
    /people/anish.abraham2/blog/2005/12/22/file-to-multiple-idocs-xslt-mapping(file to xslt mapping)
    /people/pooja.pandey/blog/2005/06/27/xslt-mapping-with-java-enhancement-for-beginners(xslt with java enhancement function)
    Regards,
    Amit

  • Examples related to XML and XSLT

    Hello friends,
    In relation to XML and XSLT
    1. As I can transform an XML file using XSLT.
    2. I view the XML file using XSLT
    3. XSL and XSLT files are equal...?
    Thanks for the support

    http://docs.oracle.com/javaee/1.4/tutorial/doc/JAXPXSLT6.html

  • Using XML extraction from Oracle and XSLT data transformation

    Hi
    How can transfer data ie: Using XML extraction from Oracle and XSLT data transformation with java application?
    usually i use to do querying sql, getting data from table assinging to model class then send it to UI. how can i go for XML extraction form oracle?
    thanks

    Sorry, I don't understand what exactly you want to do. And I'm under the impression that you might not know exactly what you want to do as well. Could you explain a bit more detailed what you want to achieve?

  • [svn] 3663: Dita xml and xslt support for SkinStates

    Revision: 3663
    Author: [email protected]
    Date: 2008-10-15 13:04:27 -0700 (Wed, 15 Oct 2008)
    Log Message:
    Dita xml and xslt support for SkinStates
    Bugs: SDK-17166
    QA: Yes
    Doc: No
    Tests: checkintests
    Ticket Links:
    http://bugs.adobe.com/jira/browse/SDK-17166
    Modified Paths:
    flex/sdk/trunk/asdoc/templates/class-parts.xslt
    flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/asdoc/TopLevelClassesGenerator.ja va

    http://docs.oracle.com/javaee/1.4/tutorial/doc/JAXPXSLT6.html

  • Python and Ruby option is missing from XCode

    I just installed xcode 3.2 and noticed I don't have the python, ruby or Java option when I try to create a new project.
    This happened when I uninstalled 3.1 and installed 3.2
    Any idea what happened? How do I get them back? I'm running Mac OS X 10.6.
    TIA,
    Fred

    Apple stopped including Cocoa project templates for Python and Ruby in Xcode 3.2. An engineer said on Apple's Xcode mailing list that the templates included with Xcode were constantly out of date. They encourage developers to download the templates directly from the PyObjC and Ruby Cocoa websites.
    Apple yanked the Java project templates from the New Project Assistant. To access them in Xcode 3.2, you must open the Organizer by choosing Window > Organizer. Click the + button at the bottom of the Organizer and choose New From Template > Java Templates.

  • Performance issue: Java and XSLT

    I have a performance issue concerning Java and XSLT: my goal is to transform an xml file (source.xml)
    by using a given xsl file (transformation.xsl). As result I would like to get a String object, in which the result
    of the transformation (html-code) is in, so that I can display it in a browser. The problem is the long time
    it takes for the code below to run through.
    xml = new File("C:\\source.xml");
    xmlSource = new StreamSource(xml);
    xslt = new File("C:\\transformation.xsl");
    StreamSource xsltSource = new StreamSource(xslt);
    TransformerFactory transFact = TransformerFactory.newInstance();
    trans = transFact.newTransformer(xsltSource);
    StringWriter stringWriter = new StringWriter();
    StreamResult streamResult = new StreamResult(stringWriter);
    trans.transform(xmlSource, streamResult);
    String output = stringWriter.toString();
    stringWriter.close();
    Before, I made the same transformation in an xml development environment, named Cooktop
    (see http://xmlcooktop.com/). The transformation took about 2 seconds. With the code above in Java it
    takes about 20 seconds.
    Is there a way to make the transformation in Java faster?
    Thanks in advance,
    Marcello
    Oldenburg, Germany
    [email protected]

    I haven't tried it but the if you can use java 6, you could try the new stax (StAX) with the XML stream loading..
    Take a look at:
    http://javaboutique.internet.com/tutorials/staxxsl/
    Then, you could cache the xslt in templates:
    ---8<---
    templates = transformerFactory.newTemplates( xsltSource );
    Transformer transformer = templates.newTransformer();
    (here you could probobly also cache the Transformer object but I think it's it's not thread safe so it's a little tricker..)
    StreamResult result = new StreamResult( System.out );
              transformer.transform(xmlSource, result);
    And, don't transform your result to a string, use a Stream or something, then the transformer could start pumping out html while working, and if you get a out of memory error it looks like you have a pretty big xml file...
    If you use jsp you could try the build in jsp taglib for xml which I think is rather good and they have support for varReader which implements the StreamSource iirc.
    /perty

  • Diff bet  .xsl and  .xslt??

    hi All!
    What is the difference between .xsl and .xslt(generated from xml spy) files
    Are they fuctionally same, and difference between them is just limited to
    like .htm and .html??
    pp

    One has an extra "t" on the end. As for how they are interpreted by various software, that depends on the software in question.

  • Python and Pygame installation help!

    Hi, I'm currently learning python and c++ in school. luckily I have xcode for my c++ development, but for python I really want to use pygame. I have tried following all of the installation instructions from their website and google searches but nothing works. The install package always finishes successfully, but when its time to run Pygame it craps out. At first pygame sort of worked, upon drawing a window however it would create the window but then freeze and I would have to force quit python and pygame. Today I tried again, but now I cant even get it to initialize pygame, it tells me this:
    Traceback (most recent call last):
    File "<stdin>", line 1, in <module>
    File "pygame.py", line 7, in <module>
    main()
    File "pygame.py", line 4, in main
    pygame.init()
    AttributeError: 'module' object has no attribute 'init'
    Please if anyone can help me it would be great, you can email me if thats easier: [email protected]

    Start from here!
    Regards,
    Marcos

  • Generate HTML from XML and XSLT

    Hi,
    I have asked in different forum but did not get my answer so asking here again
    i want to generate a HTML file from XML and XSLT in a temp folder and then read it into a java.lang.String, so can email it or write to a database file.
    how can i do it, is there any engine which will merger XML and XSLT and give a HTML file or a String as output
    Ashish

    Hi,
    Follow the simple steps.
    1) Create XML Document (I hope u have it)
    2) Create XSL Stylesheet for your XML document
    3) Put both files in one directory some where in your local system or web server upto u
    4) Invoke the XML document from webbrowser and you are done.
    http://localhost/test/Catalog.xml OR C:\XXXXDIR\test\Catalog.xml
    For Ex: XML File Content, Catalog.xml
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <?xml-stylesheet type="text/xsl" href="Catalog.xsl"?>
    <catalog>
    <cd>
    <title>Empire Burlesque</title>
    <artist>Bob Dylan</artist>
    <country>USA</country>
    <company>Columbia</company>
    <price>10.90</price>
    <year>1985</year>
    </cd>
    </catalog>
    XSL File Content: Catalog.xsl
    <?xml version="1.0" encoding="ISO-8859-1"?><xsl:stylesheet version="1.0"
    xmlns:xsl="http://www.w3.org/1999/XSL/Transform"><xsl:template match="/">
    <html>
    <body>
    <h2>My CD Collection</h2>
    <table border="1">
    <tr bgcolor="#9acd32">
    <th align="left">Title</th>
    <th align="left">Artist</th>
    </tr>
    <xsl:for-each select="catalog/cd">
    <tr>
    <td><xsl:value-of select="title"/></td>
    <td><xsl:value-of select="artist"/></td>
    </tr>
    </xsl:for-each>
    </table>
    </body>
    </html>
    </xsl:template></xsl:stylesheet>

  • Diff between .xsl  and  .xslt

    hi All!
    What is the difference between .xsl and .xslt(generated from xml spy) files
    Are they fuctionally same, and difference between them is just limited to
    like .htm and .html??
    pp

    One has an extra "t" on the end. As for how they are interpreted by various software, that depends on the software in question.

Maybe you are looking for