# Parse Word/HTML Docs for database inserts

**URL:** <https://www.ruby-forum.com/t/parse-word-html-docs-for-database-inserts/172164>\
**Category:** Ruby\
**Created:** [July 16, 2009, 1:23am UTC](https://www.ruby-forum.com/t/parse-word-html-docs-for-database-inserts/172164 "2009-07-16T01:23:10Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![msmith362](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/ebca7d/32.png) [@msmith362](https://www.ruby-forum.com/u/msmith362)\
**Post date:** [July 16, 2009, 1:23am UTC](https://www.ruby-forum.com/t/parse-word-html-docs-for-database-inserts/172164/1 "2009-07-16T01:23:10Z")

</div>

I am new to Ruby and have perused the forum but I will ask this question  
as I couldn’t seem to answer my questions with other posts.

The documents have no structure except for a unique number that appears  
first in the document and the rest of the data I am looking for is  
preceeded by key words that can help me identify a country code, the  
hour something was started or finished and maybe a subject here and  
there. The html docs are just snippets from the news pages of the  
Internet pictures and all that I need the title, and dates extracted.

What I need to do is also extract the mimetype, file name and  
last\_update\_date of the document. Can I do this with Ruby? I know Ruby  
has several gems that can help but which one would be the best for  
something like this?

Most of the postings I have read deal with semi-structured data. Data  
that is preceeded with a column name perhaps but these files are  
completely unstructured.

Also I don’t want to be entering filenames one by one. I have about 6000  
documents to parse. Is there a way to handle something like that with a  
script?

Any direction would be greatly appreciated. Never have written Ruby code  
so I am looking for a good tutorial using parsing or an example app that  
may handle something like this.

---

<div class="post-metadata">

**Author:** ![msmith362](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/ebca7d/32.png) [@msmith362](https://www.ruby-forum.com/u/msmith362)\
**Post date:** [July 16, 2009, 1:36am UTC](https://www.ruby-forum.com/t/parse-word-html-docs-for-database-inserts/172164/2 "2009-07-16T01:36:01Z")

</div>

I’m not able to help with the parsing, but if you want to check all  
files in a folder you can use this:

$all\_files = []  
Dir.chdir dir do  
$all\_files += Dir["\*"]  
end

where dir is the directory the files are in. That will get you an  
array with all the filenames. Then you can just iterate through them:

---

<div class="post-metadata">

**Author:** ![msmith362](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/ebca7d/32.png) [@msmith362](https://www.ruby-forum.com/u/msmith362)\
**Post date:** [July 16, 2009, 5:37am UTC](https://www.ruby-forum.com/t/parse-word-html-docs-for-database-inserts/172164/3 "2009-07-16T05:37:17Z")

</div>

Dylan wrote:

> I’m not able to help with the parsing, but if you want to check all  
> files in a folder you can use this:
> 
> $all\_files = []  
> Dir.chdir dir do  
> $all\_files += Dir[“\*”]  
> end

Might not Find be more useful overall?

[http://www.ruby-doc.org/stdlib/libdoc/find/rdoc/classes/Find.html](http://www.ruby-doc.org/stdlib/libdoc/find/rdoc/classes/Find.html)

–  
James B.

[www.jamesbritt.com](http://www.jamesbritt.com) - Playing with Better Toys  
[www.ruby-doc.org](http://www.ruby-doc.org) - Ruby Help & Documentation  
[www.rubystuff.com](http://www.rubystuff.com) - The Ruby Store for Ruby Stuff  
[www.neurogami.com](http://www.neurogami.com) - Smart application development

---

<div class="post-metadata">

**Author:** ![msmith362](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/ebca7d/32.png) [@msmith362](https://www.ruby-forum.com/u/msmith362)\
**Post date:** [July 16, 2009, 8:26am UTC](https://www.ruby-forum.com/t/parse-word-html-docs-for-database-inserts/172164/4 "2009-07-16T08:26:30Z")

</div>

Margaret Smith wrote:

> I am new to Ruby and have perused the forum but I will ask this question  
> as I couldn’t seem to answer my questions with other posts.

Hi Smith,

Its very tough to answer your question. Because I like HPRICOT gem very  
much. But I didn’t said That is best. It depends upon your satisfaction.  
And also please try with ,

[http://rfeedparser.rubyforge.org/](http://rfeedparser.rubyforge.org/)

Thanks,  
P.Raveendran

> **[Raveendran](https://raveendran.wordpress.com)**
>
> Nothing is impossible...

> The documents have no structure except for a unique number that appears  
> first in the document and the rest of the data I am looking for is  
> preceeded by key words that can help me identify a country code, the  
> hour something was started or finished and maybe a subject here and  
> there. The html docs are just snippets from the news pages of the  
> Internet pictures and all that I need the title, and dates extracted.
> 
> What I need to do is also extract the mimetype, file name and  
> last\_update\_date of the document. Can I do this with Ruby? I know Ruby  
> has several gems that can help but which one would be the best for  
> something like this?
> 
> Most of the postings I have read deal with semi-structured data. Data  
> that is preceeded with a column name perhaps but these files are  
> completely unstructured.
> 
> Also I don’t want to be entering filenames one by one. I have about 6000  
> documents to parse. Is there a way to handle something like that with a  
> script?
> 
> Any direction would be greatly appreciated. Never have written Ruby code  
> so I am looking for a good tutorial using parsing or an example app that  
> may handle something like this.
