Hi Rafael,
thanks for you help. That's strange because I did almost the
same
thing using c++ but I got different results. I sent to the
list a link
with the code I did. I appreciate if you take a look. As
your python
code works it's likely I mess up something in my own code.
Thanks,
Nemec
Friday, November 10, 2006, 5:07:13 PM, you wrote:
> Fernando, look this fast test:
> sdm sdm-desktop:~/db$ python
> Python 2.4.4c1 (#2, Oct 11 2006, 21:51:02)
> [GCC 4.1.2 20060928 (prerelease) (Ubuntu
4.1.1-13ubuntu5)] on linux2
> Type "help", "copyright",
"credits" or "license" for more
information.
>>>> import xapian
>>>> db = xapian.WritableDatabase('.',
xapian.DB_CREATE_OR_OPEN)
>>>> doc = xapian.Document
>>>> doc = xapian.Document()
>>>> doc.add_posting('foo', 1)
>>>> doc.add_posting('bar', 2)
>>>> db.add_document(doc)
> 1
>>>>
> EXIT PYTHON
> sdm sdm-desktop:~/db$ python
> Python 2.4.4c1 (#2, Oct 11 2006, 21:51:02)
> [GCC 4.1.2 20060928 (prerelease) (Ubuntu
4.1.1-13ubuntu5)] on linux2
> Type "help", "copyright",
"credits" or "license" for more
information.
>>>> import xapian
>>>> a = xapian.open('.')
>>>> db = xapian.open('.')
>>>> db.get_doccount()
> 1
>>>> db.get_document(1)
>>>> doc = db.get_document(1)
>>>> doc.add_value(0,"fnord")
>>>> db = xapian.WritableDatabase('.',
xapian.DB_CREATE_OR_OPEN)
>>>> db.replace_document(1, doc)
>>>>
> EXIT PYTHON AGAIN
> sdm sdm-desktop:~/db$ python
> Python 2.4.4c1 (#2, Oct 11 2006, 21:51:02)
> [GCC 4.1.2 20060928 (prerelease) (Ubuntu
4.1.1-13ubuntu5)] on linux2
> Type "help", "copyright",
"credits" or "license" for more
information.
>>>> import xapian
>>>> db = xapian.open('.')
>>>> doc = db.get_document(1)
>>>> for i in doc.termlist():
> ... print i
> ...
> ['bar', 1, 0, <xapian.PositionIter instance at
0xb7b67b8c>]
> ['foo', 1, 0, <xapian.PositionIter instance at
0xb7b67c2c>]
>>>> enq = xapian.Enquire(db)
>>>> qp = xapian.QueryParser()
>>>> enq.set_query(qp.parse_query('"foo
bar"'))
>>>> m = enq.get_mset(0,1)
>>>> for i in m:
> ... print i
> ...
> [1, 0.30830135965451672, 0, 100, <xapian.Document;
proxy of <Swig Object of
> type 'Xapian: ocument
*' at 0x81a7118> >]
> As you can see, the Xapian overwrote the document
keeping the postlist
> terms, and the search for "foo bar" (Phrase
search) returns the right
> document.
> I'm using Ubuntu 6.10, python2.4 xapian-0.9.6 (just to
test, 0.9.9 is the
> better release xD -remote backend historic-)
--
[]s
Fernando Nemec
fernando.nemec folha.com.br
http://www.folha.com.br/
_______________________________________________
Xapian-discuss mailing list
Xapian-discuss lists.xapian.org
http://lists.xapian.org/mailman/listinfo/xapian-discuss
a>
|